亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何將 -h 參數傳遞給 maven 編譯器插件以創建 JNI 頭文件

如何將 -h 參數傳遞給 maven 編譯器插件以創建 JNI 頭文件

牛魔王的故事 2022-01-06 18:15:37
我已經嘗試在 pom 中傳遞這個參數,但它無法識別它。從 jdk 8 開始,我們不必手動運行 javah 來生成頭文件,而是可以將 -h 參數傳遞給 javac 并在編譯時生成頭文件。因此,如果我可以將“-h dir”傳遞給 maven 編譯器插件,我可以在運行 mvn compile 時生成頭文件<plugin>      <artifactId>maven-compiler-plugin</artifactId>      <version>3.7.0</version>      <configuration>        <compilerArgs>          <arg>-verbose</arg>          <arg>-h .</arg>        </compilerArgs>      </configuration></plugin>但是當我運行 mvn install 我得到這個[信息] 構建失敗[信息] ----------------------------------------------- -------------------------[信息] 總時間:2.936 秒[INFO] 完成時間:2018-11-07T14:52:49+05:30[INFO] 最終內存:9M/155M[信息] - - - - - - - - - - - - - - - - - - - - - - - - -------------------------[錯誤] 無法執行目標 org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile (default-compile) on project adiesha-native: Fatal error compiling: invalid flag: -h 。-> [幫助 1]有沒有其他方法可以用 maven 來做到這一點,或者我是否必須使用“javac -h dir”手動創建它們
查看完整描述

1 回答

?
浮云間

TA貢獻1829條經驗 獲得超4個贊

我的 maven 構建有同樣的錯誤“無效標志:-h 目標/標頭”。


我嘗試了上面 Gyro Gearless 的建議。我將原來的“-h 目標/標題”分成“-h”和“目標/標題”。那解決了我的問題。現在我項目中的所有 jni 標題都正確生成并放置在目標/標題中。


這是我的 pom.xml 中的整個編譯器插件配置部分:


        <plugin>

            <artifactId>maven-compiler-plugin</artifactId>

            <version>3.7.0</version>

            <configuration>

                <compilerArgs>

                    <arg>-h</arg>

                    <arg>target/headers</arg>

                 </compilerArgs>

                <source>11</source>

                <target>11</target>

            </configuration>

        </plugin>

使用這個 pom,命令 'mvn compile' 足以生成 JNI 頭文件。請注意,'mvn clean'不會刪除以前生成的標題。


查看完整回答
反對 回復 2022-01-06
  • 1 回答
  • 0 關注
  • 161 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號