Ant построить недостающую банку из lib - PullRequest
0 голосов
/ 25 октября 2019

У меня есть build.xml, и у меня есть путь к classpath, который я установил classpathref="compile.classpath" во время компиляции:

<path id="compile.classpath">
    <fileset dir="./lib">
        <include name="*" />
    </fileset>
</path>

Папка lib содержит weblogic.jar, но когда я пытаюсь скомпилироватьпроект, я получил много ошибок из-за отсутствия weblogic.jar

Если я изменю свой путь к этому:

<path id="compile.classpath">
    <fileset dir="./lib">
        <include name="*" />
    </fileset>

    <fileset dir="${env.WL_HOME}/wlserver/server/lib">
        <include name="weblogic.jar" />
    </fileset>
</path>

Поэтому я добавляю weblogic.jar из моего локально установленного каталога weblogic,ошибок нет, и он скомпилирован.

Я скопировал weblogic.jar в папку lib моего проекта из локальной установленной папки weblogic, поэтому она должна быть такой же weblogic.jar

Что должноЯ пытаюсь? Спасибо!

1 Ответ

1 голос
/ 25 октября 2019

Я хотел бы сделать что-то подобное в вашем build.xml (вероятно, непосредственно перед тем, как вы выполните компиляцию).

<property name="echo.classpath" refid="compile.classpath"/>
<echo message="compileClasspath - ${echo.classpath}"/>

Что вам, вероятно, нужно сделать, это четко указать, где находится ваша библиотекакаталог, относительные пути сложны, если у вас есть несколько файлов build.xml, а также вложенные каталоги и прочее.

То, что я сделал раньше, - это убедитесь, что вы явно указали свойство в нужном месте для вашей библиотекикаталог, и просто используйте его, а не ./

<project basedir=".">
  <target name="init">
    <property name="local.lib.dir" value="${basedir}/lib">
  </target>

  <target name="compile" depends="init">
    <path id="compile.classpath">
      <fileset dir="${local.lib.dir}">
        <include name="*" />
      </fileset>
    </path>
    ....
  </target>
</project>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...