SBT как запустить InputTask - PullRequest
       20

SBT как запустить InputTask

6 голосов
/ 19 февраля 2012

Я создаю несколько пользовательских задач в своем проекте SBT, и мне нужно вызывать другие задачи для этого.

Как я могу вызывать inputTasks из моих задач и поддерживать их некоторый ввод?

1 Ответ

5 голосов
/ 07 мая 2012

Поскольку вы можете обдумать свои собственные задачи, я предполагаю, что вы пытаетесь использовать задачу run.Потребовалось немного покопаться, но я наконец заставил это работать;в двух словах, это то, что вы делаете (при условии, что ваша задача называется deployTask, подстройка под ваши нужды):

deployTask <<= ( fullClasspath in Compile, runner ) map { ( classpath, runner ) =>
        val logger = ConsoleLogger()    // Not sure this is optimal
        Run.executeTrapExit( {
            Run.run( "com.sample.MainClass", 
                     classpath map { _.data }, 
                     Seq( "option1", "option2", "..." ),  // <-- Options go here
                     logger )( runner )
        }, logger )
    }

Это не вызывает InputTask напрямую (у меня нетнашел способ сделать это еще), но он по крайней мере позволяет запускать произвольный код Java.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...