首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Maven NAR插件:在路径上找不到DLL依赖项

Maven NAR插件:在路径上找不到DLL依赖项
EN

Stack Overflow用户
提问于 2012-12-18 03:23:15
回答 1查看 818关注 0票数 1

我正在尝试使用Maven和NAR插件来构建和测试DLL。我正在构建的DLL依赖于另一个DLL,它也是我使用NAR插件构建的。这是我的POM:

代码语言:javascript
复制
<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插件的分支漂浮在周围;除了我正在使用的插件之外,这个问题可能会在其他版本的插件中修复吗?或者有什么可以推荐的变通方法?

EN

回答 1

Stack Overflow用户

发布于 2012-12-20 01:08:03

发现这是一个已知问题:https://issues.sonatype.org/browse/NAR-189

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13920728

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档