Проблема при компиляции/развертывании адаптера Java в MFP 7.1 с использованием ANT

У меня есть следующая версия Java, которую необходимо использовать в моем проекте:

Hussams-MacBook-Pro:buildscripts SamEddin$ java -version
java version "1.8.0_112-ea"
Java(TM) SE Runtime Environment (build 1.8.0_112-ea-b04)
Java HotSpot(TM) 64-Bit Server VM (build 25.112-b04, mixed mode)

Я использую этого муравья для компиляции моего java-адаптера, который дает успешный результат:

    <taskdef resource="com/worklight/ant/defaults.properties">
        <classpath>
          <pathelement location="${WL_PATH}/worklight-ant-builder.jar"/>
        </classpath>
      </taskdef>

      <path id="server-classpath">
                <fileset dir="${WL_PATH}" includes="worklight-jee-library.jar" />
                <fileset dir="${WL_PATH}" includes="**/*.jar" />
                <fileset dir="${basedir}/source/${project.name}/adapters/GRSValidationAdapter/lib" includes="**/*.jar"/>

      </path>

 <javac
      srcdir="${basedir}\source\${project.name}\adapters\GRSValidationAdapter\src\ca\manulife\adapter"
      classpathref="server-classpath"
      destdir="${basedir}\AdapterClasses"
      verbose="true"
      includeantruntime="false"
      target="1.7"
    />

    <target name="build-adapter">

        <adapter-builder 
        destinationfolder="bin" 
        classpathref="server-classpath" 
        folder="${basedir}\source\${project.name}\adapters\GRSValidationAdapter"
            />
    </traget>

Однако, когда я развертываю адаптер на сервере, я получаю следующую ошибку:

11:04:21:764 EDT] 000000b1 StatusMessage E StatusMessage createStatusMessage Preparation to deploy adapter 'GRSValidationAdapter' failed.
java.lang.Error: The adapter was built with a later version of Java than is used to run the server.

Как я могу заставить моего муравья скомпилировать классы Java в моем адаптере для использования 1.7.

Примечания:

У меня и 1.7 и 1.8 установлена.

Версия сервера: 7.1.0.00.20160401-2103


person Sami    schedule 07.10.2016    source источник
comment
Какой сервер приложений вы использовали для установки МФУ? БЫЛ или Томкэт? Тогда какой выпуск этого сервера приложений?   -  person John Gerken    schedule 07.10.2016
comment
Я использовал сервер WAS   -  person Sami    schedule 07.10.2016
comment
Но какая версия WAS? Liberty, Base или ND и на каком уровне вы работаете? Я хочу узнать для вас, какую версию Java поддерживает этот сервер. Если он поддерживает 1.8, то самым простым решением для вас может быть изменение JDK, который использует WAS.   -  person John Gerken    schedule 07.10.2016
comment
Извините, это WAS ND версии 8.5.5.9.   -  person Sami    schedule 07.10.2016


Ответы (2)


Установите переменные JAVA_HOME/PATH в профиле Linux Bash, например:

person kepler    schedule 07.10.2016
comment
Я должен использовать JAVA_HOME до 1.8, я не могу его переключить. У меня есть другие проекты, работающие на той же машине, которым нужна эта версия Java. Мне нужно заставить муравья использовать 1.7 и не менять весь Java_Home - person Sami; 07.10.2016
comment
атрибут target в версии 1.7, например ‹target name=compile› ‹javac target=1.7 srcdir=.../› ‹/target› - person kepler; 07.10.2016
comment
как добавить цель в сборщик адаптеров? - person Sami; 07.10.2016
comment
Я получил эту ошибку: сборщик адаптеров не поддерживает целевой атрибут - person Sami; 07.10.2016
comment
‹target name=compile› ‹javac target=1.7 srcdir=.../› ‹/target› - person kepler; 07.10.2016
comment
Добавь это в своего муравья, приятель! Вы используете инструмент ant для его компиляции, верно? - person kepler; 07.10.2016
comment
Я уже использовал javac, обновил свой вопрос. Как я могу включить destdir из javac в свой конструктор адаптеров? - person Sami; 07.10.2016

Если вы используете WebSphere Application Server 8.5.5.5 или более позднюю версию, вы можете использовать java 1.8 на своем сервере.

Используйте эту страницу, чтобы узнать, какая версия Java поставляется с каждой версией. . Оттуда вы можете либо обновить свой сервер, либо изменить конфигурацию WAS, чтобы использовать установленную версию Java 1.8.

Есть смысл?

person John Gerken    schedule 07.10.2016
comment
Спасибо, это имеет смысл, я свяжусь со своей командой по развертыванию, чтобы узнать, можем ли мы обновить JDK на WAS ND 8.5.5.9, чтобы решить эту проблему. - person Sami; 07.10.2016