Surefire JUnit Testing usando bibliotecas nativas
Estamos utilizando Maven en Hudson para ejecutar nuestro proceso de compilación Java y el complemento Surefire para ejecutar las pruebas de JUnit; sin embargo, me he encontrado con un problema con las pruebas de unidad para un proyecto que requiere dlls nativos.
El error que estamos viendo es:
Pruebas de error: TestFormRegistrationServiceConnection (com. # Productidentifierremoved # .test.RegistrationServiceTest): no hay Authenticator en java.library.path
Donde Authenticator es el nombre de la dll que requerimos. encontréeste mensaje SO lo que sugiere que la única forma de configurar esto es a través de argLine. Hemos modificado nuestra configuración a esto:
<code> <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> </code>
Sin embargo, esto sigue dando el mismo error y si incluimos un System.out.println (System.getProperty ("java.library.path")); Podemos ver que esto no se está agregando a la ruta.
¿Alguna idea de cómo podemos resolver esto?