首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Maven:在nar-plugin中,您能指定从哪里获取includes吗?

Maven:在nar-plugin中,您能指定从哪里获取includes吗?
EN

Stack Overflow用户
提问于 2013-02-25 23:17:27
回答 1查看 2.1K关注 0票数 1

我有一个具有多个子模块和子子模块的项目,其中有java和本地语言代码(主要是本地语言)。为了处理这个本机代码,我使用了maven-nar-plugin。现在,我没有在本地存储库中编译本机代码所需的所有includes。有没有办法给maven-nar-plugin提供一个目录,并包含其中的所有内容?

我在模块的pom中使用了<systemIncludePaths><includePaths>,但它仍然无法编译。

如果有比我要做的方向更简单的方法,请解释一下。

EN

回答 1

Stack Overflow用户

发布于 2013-06-22 17:54:07

下面的工作仍在进行中,但我认为我在正确的轨道上。我从以下(标准)目录结构开始,希望在其中包含一个git c++项目:

代码语言:javascript
复制
+---src
    +---main
        +---c++
        +---java

因为我不想更改原始make项目的目录结构,所以我需要定义定制的源目录和定制的include目录。这是拉取后得到的目录结构(我忽略了不相关的文件结构):

代码语言:javascript
复制
+---src
    +---main
        +---c++
            +---data
                +--- ...
            +---examples
                +--- ...
            +---scripts
                +--- ...
            +---src
                +---hunalign
                    +--- ... (source files)
                +---include
                    +--- ... (header files)
                +---utils
                    +--- ... (helper classes)
            +---tools
                +--- ...

通过以下配置,我编译了项目。

代码语言:javascript
复制
    <build>
    <plugins>
        <plugin>
            <artifactId>maven-nar-plugin</artifactId>
            <version>2.1-SNAPSHOT</version>
            <extensions>true</extensions>
            <configuration>
                <libraries>
                    <library>
                        <type>executable</type>
                        <run>true</run>
                    </library>
                </libraries>
                <!-- Here is the config for the custom source dir and includes -->
                <cpp>
                    <sourceDirectory>
                        ${basedir}/src/main/c++/src/hunalign
                    </sourceDirectory>
                    <includes>
                        <include>${basedir}/src/main/c++/src/include/*.h</include>
                    </includes>
                </cpp>
                <libraries>
                    <library>
                        <type>executable</type>
                        <run>true</run>
                    </library>
                </libraries>
            </configuration>
        </plugin>
    </plugins>
</build>

编辑:为了让javah正常运行,我必须对它进行符号链接,因为maven总是在错误的地方寻找它:

代码语言:javascript
复制
sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_13.jdk/Contents/Home/bin/javah /Library/Java/JavaVirtualMachines/jdk1.7.0_13.jdk/Contents/Home/jre/bin/javah
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15070221

复制
相关文章

相似问题

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