При запуске моего файла сборки ant я получаю следующее сообщение
-build-middleware-securitymanager:
[echo] -> httpbean.securitymanager
[echo] -> httpbean.securitymanager.config
[echo] -> httpbean.securitymanager.context
[echo] -> httpbean.securitymanager.login
[echo] -> C:\eclipse\current\RunImported
[javac] Compiling 4 source files to C:\eclipse\current\new\classes
[javac] C:\eclipse\current\httpbean\securitymanager\login\integration\bellsouth\LoginUserWS.java:192: cannot access ServiceException
[javac] file ServiceException.class not found
[javac] final LoginInfo info = _login.login(user, clrpasswd, _token);
[javac] ^
Проверив мой файл сборки, он ссылается на следующий раздел
<echo message="-> httpbean.securitymanager.login" />
<echo message="-> ${run-imported}" />
<javac includeantruntime="${ant8compat}" debug="${debug}" srcdir="${src}" destdir="${classes}" includes="httpbean/securitymanager/login/**/*.java" encoding="UTF-8">
<exclude name="**/*_UnitTest.java" />
<classpath>
<path refid="Axis" />
<path refid="commons-logging" />
<path refid="shark-1.1" />
<path refid="log4j" />
</classpath>
</javac>
Класс ServiceException является частью пакета javax.xml.rpc, который находится в jaxrpc.jar в каталоге shark-1.1, ссылка на shark-1.1 -
<path id="shark-1.1">
<fileset dir="${run-imported}/shark-1.1">
<include name="*.jar" />
</fileset>
</path>
Проверив каталог ${run-imported}/shark-1.1
, я могу ясно видеть правильный файл jar, который там находится!
Я попытался добавить тег pathelement в часть classpath задачи javac, чтобы указать непосредственно на файл jar, где находится отсутствующий класс, но это также не работает.
EDIT:
Импорт
import javax.xml.rpc.ServiceException;
А банка имеет такую структуру, исключение ServiceException