Почему ant игнорирует файлы jar задач в $ HOME / .ant / lib / - PullRequest
2 голосов
/ 15 декабря 2009

Конфигурация: Я работаю со стандартной Fedora 12 с муравьем, который поставляет Fedora:

  • муравьиный 1.7.1-12.fc12
  • Java-1.6.0-OpenJDK-1.6.0.0-33.b16.fc12

У меня есть svnant.jar и svnClientAdapter.jar в моем $HOME/.ant/lib/

Я использую следующее build.xml:

<project name="antlibtest" default="doEcho">
    <taskdef resource="svntask.properties"/>

    <target name="doEcho">
        <echo message="Hello World!"/>
        <echo message="ANT_HOME=${ant.home}"/>
        <echo message="classpath=${java.class.path}"/>
    </target>
</project>

Когда исполняется файл сборки, я получаю следующую ошибку: [taskdef] Не удалось загрузить определения из ресурса svntask.properties. Не удалось найти.

Если я установлю ANT_HOME на /usr/share/ant/, он будет работать безупречно.

В обоих случаях файлы jar из моего домашнего каталога явно находятся в выходных данных classpath.

Как мне сделать эту работу, не прибегая к моей собственной копии ant, ANT_HOME и ant --noconfig?

Ответы [ 3 ]

1 голос
/ 01 июня 2010

У меня просто была такая же проблема с maven-ant-tasks.jar. Ant показал файл jar в пути к классам, но не нашел его в теге. Изменение ANT_HOME у меня не сработало, но я нашел другое решение:

Дополнительные файлы jar должны быть зарегистрированы в простом текстовом файле в /etc/ant.d, содержащем имя (или путь) файла jar, где путь указывается относительно / usr / share / java и без расширение ".jar".

Так что если вы хотите, например, зарегистрировать maven-ant-tasks, просто поместите maven-ant-tasks.jar (или его символическую ссылку) в / usr / share / java и добавьте файл "maven-ant-tasks" в /etc/ant.d, состоящий из строки: "maven-ant-tasks".

Это работает по крайней мере для меня на openSuse 11.1. Может быть, это кому-нибудь поможет.

Ханнес

1 голос
/ 16 декабря 2009

Похоже, это проблема, описанная в Ошибка 490542 (это относится и к Fedora 12 в соответствии с последним комментарием). К сожалению, ошибка все еще находится в НОВОМ состоянии, поэтому я не думаю, что она будет решена в ближайшем будущем.

Что касается ANT_HOME, разве /etc/ant.conf не устанавливает его в /usr/share/ant, как объяснено здесь ? Это может быть устаревшим, но я не могу проверить это (и я действительно не понимаю, как это должно быть настроено в Fedora).

0 голосов
/ 12 мая 2017

Я получаю ту же проблему с centos 7. Встроенный муравей Google Cloud - 1.9.x Я пытаюсь загрузить новейшую версию муравья 1.10.x, но у меня такая же проблема

Установка ANT_HOME на /usr/share/ant/ также разрешает его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...