我将Java版本从Java 8切换到Java 11,似乎在Java 11中,从JDK bin文件夹中删除了javah,然后才像下面那样在pom.xml中执行javah命令
<execution>
<id>javah</id>
<goals>
<goal>exec</goal>
</goals>
<phase>compile</phase>
<configuration>
<executable>javah</executable>
<arguments>
<argument>-classpath</argument>
<argument>${project.build.outputDirectory}</argument>
<argument>-d</argument>
<argument>${build.path}/include</argument>
</arguments>
</configuration>
</execution>
由于Javah已从JDK 11中删除,我如何在pom中将上述javah命令替换为javac -h以与Java 11一起使用
我得到的错误是
无法在项目myProject上执行目标org.codehaus.mojo:exec-maven-plugin:1.6.0:exec(javac -h):命令执行失败。:进程退出,错误:2(退出值:2) )
有什么主意吗? 谢谢
答案 0 :(得分:4)
您应该将执行方式修改为:
<execution>
<id>javach</id>
<goals>
<goal>exec</goal>
</goals>
<phase>compile</phase>
<configuration>
<executable>javac</executable>
<arguments>
<argument>-classpath</argument>
<argument>${project.build.outputDirectory}</argument>
<argument>-h</argument>
<argument>${build.path}/include</argument>
</arguments>
</configuration>
</execution>
基于javac --help
-h <directory> Specify where to place generated native header files