Мы используем Maven в Hudson для запуска нашего процесса сборки Java и плагин Surefire для выполнения тестов JUnit, однако я столкнулся с проблемой модульных тестов для одного проекта, для которого требуются собственные библиотеки DLL.
Ошибка, которую мы видим:
Тесты с ошибкой: TestFormRegistrationServiceConnection(com.#productidentifierremoved#.test.RegistrationServiceTest): нет аутентификатора в java.library.path
Где Authenticator — это имя требуемой dll. Я нашел этот SO post что предполагает, что единственный способ установить это через argLine. Мы изменили наш конфиг на это:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-report-plugin</artifactId>
<version>2.10</version>
<configuration>
<forkMode>once</forkMode>
<argLine>-Djava.library.path=${basedir}\src\main\native\Authenticator\Release</argLine>
</configuration>
</plugin>
Однако это по-прежнему дает ту же ошибку, и если мы включим System.out.println(System.getProperty("java.library.path")); мы видим, что это не добавляется к пути.
Любые идеи, как мы можем это решить?