Плагин Maven NAR: не найдена зависимость DLL от пути

Я пытаюсь собрать и протестировать DLL, используя Maven и плагин NAR. Библиотека, которую я создаю, зависит от другой библиотеки DLL, которую я создал также с помощью плагина NAR. Вот мой POM:

<project>
<modelVersion>4.0.0</modelVersion>

<groupId>com.mycompany</groupId>
<artifactId>myproject</artifactId>
<packaging>nar</packaging>

<name>My Project</name>
<version>1.0.0-SNAPSHOT</version>

<properties>
<skipTests>true</skipTests>
</properties>

<build>
<defaultGoal>install</defaultGoal>
<plugins>
<plugin>
<groupId>org.codeswarm</groupId>
<artifactId>maven-nar-plugin</artifactId>
<version>20121119</version>
<extensions>true</extensions>
<configuration>
<cpp>
<defines>
<define>DLLEXPORT</define>
</defines>
</cpp>

<libraries>
<library>
<type>shared</type>
</library>
</libraries>

<tests>
<test>
<name>ProjectTest</name>
<link>shared</link>
</test>
</tests>
</configuration>

</plugin>
</plugins>
</build>

<dependencies>
<dependency>
<groupId>com.mycompany</groupId>
<artifactId>shared-library</artifactId>
<version>1.0.0-SNAPSHOT</version>
<type>nar</type>
<scope>runtime</scope>
</dependency>
</dependencies>

</project>

Если я уберу зависимость от com.mycompany:shared-library — также удаляя код, который хочет вызвать его, — тогда он работает нормально. ProjectTest работает нормально и делает то, что должен. Но при наличии зависимости maven не может запустить тест, потому что не может найти shared-library, Вылетает с ошибкой 0xc0000135,

Когда я запускаю Maven в режиме отладки, я вижу, что когда он компилирует тест, он правильно добавляет пути включения для заголовочных файлов обеих библиотек DLL в команду компилятора. И когда он связывает тест, он правильно добавляет библиотеки экспорта для обеих DLL в команду компоновщика. Проблема возникает, когда Maven выполняет тест: Maven хочет добавить путь к DLL к системному пути, и он делает это — но он только добавляет путь к myproject DLL. Это не добавляет путь к shared-library DLL. Отсюда крушение.

Это известная проблема в maven-nar-plugin? Я также слышал, что это говорит о том, что вокруг плавающего плагина NAR есть несколько вилок; Может ли эта проблема быть исправлена ​​в какой-то версии плагина, отличного от того, который я использую? Или есть какое-то решение, которое можно порекомендовать?

1

Решение

Обнаружено, что это известная проблема: https://issues.sonatype.org/browse/NAR-189

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]