2016-08-01 4 views
-1

Я просмотрел полный переполнение стека для хорошего ответа на этот вопрос, но ни одно решение не работает.Запуск файлов jar в подкаталогах

У меня есть каталог A, а в каталоге A есть подкаталог B. В подкаталоге B есть файл jar, назовем его start.jar (а также файл lib в этом каталоге). Как я запустил этот файл jar из каталога A, не запустив cd'ing в подкаталог B.

Я предполагаю, что вы можете сделать это с помощью инструкции -cp, но я не уверен, как это будет работать.

- Я сделал ошибку, сказав, что удаленные люди указали. Я просто имел в виду подкаталог. Дело в том, что когда я запускаю файл jar в подкаталоге B, он запускается. Однако, когда я делаю java -jar Path/To/B/start.jar из каталога A, он не работает. Мне было интересно, как решить эту проблему.

Редактировать: Так что я думаю, что не понял, о чем я говорю. Извините, я проясню это. Я запускаю solr_instance.

У меня есть каталог «A», который является solr_instance.

В файле solr_instance есть папка solr_instance/solr-4.6.1/example, в которой есть файл start.jar и папка lib (как и другие файлы, конечно).

При запуске Java -jar solr_instance/Solr-4.6.1/example.start.jar я получаю следующее сообщение об ошибке

java.io.FileNotFoundException: No XML configuration files specified in start.config or command line. 
    at org.eclipse.jetty.start.Main.start(Main.java:502) 
    at org.eclipse.jetty.start.Main.main(Main.java:96) 

Когда я запускаю его в подкаталоге, он работает. Мне было интересно, почему это так, и если да, есть ли способ сделать это (без использования cd'ing).

Извините, если раньше я был неясен!

+0

Где делает 'удаленную часть «Войдите сюда? – sjsam

+2

@sjsam: Я подозреваю, что OP неправильно понял термин «удаленный» и считает, что jar-файл «удален», потому что он не находится в текущем каталоге. – ruakh

+0

@руах: Ну, может быть так. :) – sjsam

ответ

1

В каталоге A попробовать:

java -jar B/start.jar 
+0

Nice ++, Это должно быть сделано для требования, указанного в вопросе. но я немного смущен, поскольку op упомянул 'remote' в названии. Итак, давайте подождем обновление ++ – sjsam

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