在Java的NetBeans“工作区”中,有几个项目(所有dir都在同一个级别上):
main(String[] args)方法)我试图通过JNILibrary\pom.xml中的配置文件为Windows提供“存根”(只是一些空方法)源代码,从而使它在Windows上可调试。
<groupId>com.example</groupId>
<artifactId>jnilibrary</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<parent>
<groupId>com.example.test</groupId>
<artifactId>Main</artifactId>
<version>0.0.1-SNAPSHOT</version>
<relativePath>../Main/pom.xml</relativePath>
</parent>
<build>
<sourceDirectory>${src.dir}</sourceDirectory>
</build>
<profiles>
<profile>
<id>windows</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<properties>
<src.dir>src/windows/java</src.dir>
</properties>
</profile>
<profile>
<id>linux</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<src.dir>src/linux/java</src.dir>
</properties>
</profile>
</profiles>之后,我可以选择Set Configuration -> linux或Set Configuration -> Windows,当我右键单击NetBeans中的JNILibrary项目时。
不幸的是,当我尝试调试MainExecutable项目时-它仍然(构建和)启动Linux版本-并且未能在我的Windows上启动。
有人能指点正确的方向如何解决我的问题吗?
以下是Main\pom.xml的摘录
<groupId>com.example.test</groupId>
<artifactId>Main</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>
<name>Main</name>
<modules>
<module>../MainExecutable</module>
<module>../jnilibrary</module>
<module>../10/further/modules</module>
</modules>这里是MainExecutable\pom.xml的摘录
<parent>
<groupId>com.example.test</groupId>
<artifactId>Main</artifactId>
<relativePath>../Main</relativePath>
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>MainExecutable</artifactId>
<packaging>jar</packaging>发布于 2016-01-25 12:34:26
正如您所写的,将这2个配置文件移动到Main/put.xml,并将新的属性jnilibrary.src.dir添加到这两个配置文件中
<profiles>
<profile>
<id>windows</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<properties>
<jnilibrary.src.dir>src/windows/java</src.dir>
</properties>
</profile>
<profile>
<id>linux</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<jnilibrary.src.dir>src/linux/java</src.dir>
</properties>
</profile>
</profiles>并在JNILibrary\pom.xml中使用该属性
<build>
<sourceDirectory>${jnilibrary.src.dir}</sourceDirectory>
</build>发布于 2016-01-22 19:16:59
您可以使用OS名称来激活配置文件:
<build>
<sourceDirectory>${src.dir}</sourceDirectory>
</build>
<profiles>
<profile>
<id>windows</id>
<activation>
<os>
<name>Windows</name>
</os>
</activation>
<properties>
<src.dir>src/windows/java</src.dir>
</properties>
</profile>
<profile>
<id>linux</id>
<activation>
<os>
<name>Linux</name>
</os>
</activation>
<properties>
<src.dir>src/linux/java</src.dir>
</properties>
</profile>
</profiles>https://stackoverflow.com/questions/34946547
复制相似问题