2016-01-06 3 views
-1

Я пытаюсь запустить Java-приложение с кучей аргументов, но я получаю ошибку в заголовке (GNU bash 4.2.45). В окнах он отлично работает. некоторые аргументы, которые я проверил, который один произвел ошибку, и если я удалить следующий аргумент приложение запускается:-bash: синтаксическая ошибка рядом с проверенным токеном `('

java -jar jarFile.jar --spring.activemq.broker-url=failover:(tcp://localhost:61616)?timeout=5000 

имеет это что-то делать с двоеточием я пытался избежать их \:, но это не помогает? .

+0

'На окнах он отлично работает'. Как это важно? Windows использует другую оболочку. – hek2mgl

+0

@ hek2mgl Я знаю, он должен только сказать, что я работал раньше в Windows с теми же аргументами, и теперь я перешел на linux с bash, и теперь это не сработает, но я понятия не имел, почему. – Semaphor

+0

Потому что это другой * язык *? – hek2mgl

ответ

3

Как вам сообщает bash, ( вызывает синтаксическую ошибку. Я предлагаю разместить одинарные кавычки вокруг аргумента:

--spring.activemq.broker-url='failover:(tcp://localhost:61616)?timeout=5000' 

строки в одинарных кавычках интерпретируются буквально, это означает, что среди прочего, ( не будет интерпретатором. В оболочке ( используется для открытия подоболочки, что здесь недействительно.

Смежные вопросы