В Scala можно ли написать скрипт, который ссылается на другой скрипт - PullRequest
5 голосов
/ 21 сентября 2010

В настоящее время я смотрю на использование сценариев Scala для управления жизненным циклом базы данных MySQL вместо использования сценариев MS-DOS (я нахожусь на Windows XP).

Я хочу иметь сценарий конфигурации, который содержит только информацию о конфигурации, и 1 или более сценариев управления, которые используют информацию о конфигурации для выполнения различных операций, таких как запуск, остановка, отображение состояния и т. Д.

Можно ли написать скрипт Scala, который включает / импортирует / ссылается на другой скрипт Scala?

Я посмотрел на опцию -i интерпретатора scala, но это запускает интерактивный сеанс, который мне не нужен.

Ответы [ 3 ]

4 голосов
/ 21 сентября 2010

Согласно Scala man , предварительная загрузка скрипта работает только в интерактивном режиме.

В качестве обходного пути вы можете выйти из интерактивного режима после запуска сценария. Вот код child.bat (скрипт, который включает в себя еще один универсальный):

::#!
@echo off
call scala -i genetic.bat %0 
goto :eof
::!#
def childFunc="child"

println(geneticFunc)
println(childFunc)
exit;

genericFunc определяется как genetic.bat

Выход child.bat:

>child.bat
Loading genetic.bat...
...    
geneticFunc: java.lang.String
Loading child.bat...
...
childFunc: java.lang.String
generic
child
3 голосов
/ 21 сентября 2010

Я бы использовал Обрабатываю и вызываю другой скрипт Scala, как и любую другую команду.

1 голос
/ 21 сентября 2010

Одним из вариантов будет иметь скрипт, который объединяет два файла вместе и затем запускает его, что-то вроде:

@echo off
type config.scala > temp.scala
type code.scala >> temp.scala
scala temp.scala
del temp.scala

или аналогичный. Тогда вы оставляете эти два отдельно, как хотели.

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