0

Java 用の NetBeans の「ワークスペース」には、いくつかのプロジェクトがあります (すべてのディレクトリは同じレベルにあります)。

  • 主要
  • MainExecutable (main(String[] args)デバッグ用のメソッドを含む)
  • JNILibrary (Linux でのみ使用可能)
  • さらに10件のプロジェクト

そして、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>

その後、NetBeans でJNILibraryプロジェクトを右クリックすると、Set Configuration -> linuxまたはを選択できます。Set Configuration -> Windows

残念ながら、MainExecutableプロジェクトをデバッグしようとすると、まだ Linux バージョンが (ビルドおよび) 起動され、Windows PC での起動に失敗します。

誰かが私の問題を解決する方法について正しい方向を示してもらえますか?

以下は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>
4

2 に答える 2

2

あなたが書いたように、2つのプロファイルを Main/pom.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-25T12:34:26.743 に答える