Код простой. Класс 1 вызывает метод класса 2.
- import test.sub2.Sub2;
- public class Sub1 {
- public static void sub1() {
- Sub2.sub2();
- }
- }
- package test.sub2;
- public class Sub2 {
- public static void sub2() {
- }
- }
- <project name="TestProject" default="compile">
- <target name="compile">
- <delete>
- <fileset dir="bin">
- <include name="**/*.class"/>
- </fileset>
- </delete>
- <javac srcdir="src" destdir="bin">
- <exclude name="test/sub2/**" />
- </javac>
- </target>
- </project>
Но не тут то было, его тоже скомпилирует и всё пройдёт саксес. Хорошо тут специально симулированный простой случай, но начинается полная (_!_) когда Sub2 вызывает ещё какой-то класс, в котором есть специфические методы из библиотек, которых нет в classpath модуля1 и соответственно это умный ант разрулить не может. И человек рвёт на себе волосы, потому что по сути он всё сделал правильно, модуль 2 компилируется без проблем, какого падает компиляция модуля 1, хотя в его классах не было изменений, не понятно. Вообщем вот он какой magic.