Я хотел иметь определенный JAR в моем classpath для легкого доступа с REPL Jython.Таким образом, в моем .bashrc я положил:
export CLASSPATH=:/home/tmacdonald/path/to/jar/thing.jar
Однако, это нарушает муравей для компиляции того, что JAR может компилировать JAR из другого подпакета:
$ ant jar
Invalid implementation version between Ant core and Ant optional tasks.
core : 1.8.0 in file:/usr/share/ant/lib/ant.jar
optional: 1.5.1 in file:/home/tmacdonald/path/to/jar/lib/gt2-2.3.3/ant-optional-1.5.1.jar
$ echo $CLASSPATH
:/home/tmacdonald/path/to/jar/thing.jar
Изменение пути к классам исправляет это:
$ export CLASSPATH=
$ !ec
echo $CLASSPATH
$ ant jar
[Compiles successfully.]
Но кажется неловким, и не то, что мне нужно постоянно менять мой путь к классу, в зависимости от того, хочу ли я запустить ant или JYthon REPL.Я признаю, что мои знания как муравья, так и пути к классам довольно слабые.Я просто думаю о classpath как о «PATH для библиотек Java; или PYTHONPATH для Java», и я только когда-либо добавляю небольшие изменения в существующие файлы конфигурации Ant, которые я унаследовал - мне никогда не приходилось их настраивать.
Так что мне было бы интересно услышать, что на самом деле происходит (и, кстати, как это вызывает мою проблему), чтобы я мог быть немного более образованным, и, конечно, я бы тоже хотел исправить ситуацию.Спасибо!