Как я могу изменить JAVA_HOME для муравья?

Ниже код работает для меня в файле web.xml

<servlet>
    <servlet-name>WebService</servlet-name>
    <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
    <init-param>
        <param-name>jersey.config.server.provider.packages</param-name>
        <param-value>com.example.demo.webservice</param-value>
        //Package
    </init-param>
    <init-param>
        <param-name>unit:WidgetPU</param-name>
        <param-value>persistence/widget</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>WebService</servlet-name>
    <url-pattern>/webservices/*</url-pattern>
</servlet-mapping>
30
задан mtk 25 June 2012 в 12:45
поделиться

7 ответов

JAVA_HOME должен указать на JDK домой, при попытке скомпилировать код. Проверьте, чтобы видеть, существует ли '/usr/tomcat/jre/bin/javac'. Я сомневаюсь, что это делает.

, Если у Вас нет JDK, затем можно работать вокруг этого путем получения ECJ (компилятор затмения) библиотека, отбрасывания его в '~/.ant/lib' и добавления, что системное свойство к командной строке для использования того компилятора - проверяет руководство Муравья на детали.

http://ant.apache.org/

1
ответ дан nbeyer 25 June 2012 в 12:45
поделиться

Вы могли создать свой собственный сценарий для рабочего муравья, например, названный ant.sh как:

#!/bin/sh
JAVA_HOME=</path/to/jdk>; export JAVA_HOME
ant $@

и затем запущенный Ваш скрипт.

$ chmod 755 ant.sh
$./ant.sh clean compile

или безотносительно целевого объекта Ant Вы хотите работать

13
ответ дан Nils Weinander 25 June 2012 в 12:45
поделиться
  • 1
    Нет, it' s точно обратное. Второе более устойчиво. Как я сказал с первым, Вы полагаетесь на то, что некоторый код прервет исключение, которое Вы выдали, проанализирует его тип и так как это - HttpException, это извлечет StatusCode, Вы установили и возвращаете его клиенту. Со вторым Вы непосредственно и явно отправляете этот код статуса в ответ. Что более устойчивый, чем это Вы хотите? – Darin Dimitrov 18 June 2013 в 00:35

Когда использование Bash просто пробует это:

$ export JAVA_HOME=/usr/tomcat/jre
1
ответ дан Tim Cooper 25 June 2012 в 12:45
поделиться

Смотря на сценарий оболочки для вызова муравья, возможно, что значение для набора $JAVA_HOME для Вашей оболочки в .bashrc может быть переопределено в файлах/etc/ant.conf, $HOME/.ant/ant.conf и $HOME/.antrc. Если Вы выполняете удар-x < соедините каналом муравью script> это испустит отладочную информацию, которая должна помочь Вам разыскать, где $JAVA_HOME переопределяется.

5
ответ дан laz 25 June 2012 в 12:45
поделиться
  • 1
    Я уже выразил свое мнение в отношении вопроса. Если Вы предпочитаете, бросок разрешения. Я won' t используют первый код. Но я уважаю Ваше мнение о предмете. – Darin Dimitrov 18 June 2013 в 00:44

JAVA_HOME должен указать на то, где JDK установлен не не JRE.

Так, если Вы вводите ls $JAVA_HOME, что Вы видите? если Вы делаете ls $JAVA_HOME/bin/, Вы видите javac?

, Если первое не работает затем, у Вас нет JAVA_HOME, указывающего на правильный каталог. Если второе не работает затем, необходимо указать на JAVA_HOME на JDK вместо JRE.

6
ответ дан TofuBeer 25 June 2012 в 12:45
поделиться
  • 1
    Второй не пойман фильтром исключения. Таким образом в случае, если у Вас есть глобальный фильтр исключения, вторые опции не записали бы исключения. – Chandermani 18 June 2013 в 00:37

Вам нужно будет изменить путь JAVA_HOME к каталогу Java SDK вместо каталога Java RE. В Windows это можно сделать с помощью команды set в командной строке.

например

set JAVA_HOME = "C: \ Program Files \ Java \ jdk1.6.0_14"

0
ответ дан 27 November 2019 в 22:36
поделиться

На моем компьютере с Windows 7 установка:

JAVA_HOME="C:\Program Files\Java\jdk1.6.0_18" 

не работает. Но установка:

JAVA_HOME=C:\Program Files\Java\jdk1.6.0_18

сработала.

5
ответ дан 27 November 2019 в 22:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: