解决java maven项目找不到jconsole-1.8.0.jar和tools-1.8.0.jar包问题的完整攻略如下:
问题说明
当使用Maven构建Java项目时,有时候会出现找不到jconsole-1.8.0.jar和tools-1.8.0.jar包的问题。这是因为Java从JDK 9开始,已经将jconsole.jar、tools.jar等jar包从JDK中分离出来,这些包已经不在$JAVA_HOME\lib目录下了。
解决方案
为了解决这个问题,我们可以从以下两种方式中选择:
方案一:添加本机JRE中的jconsole.jar和tools.jar依赖
- 打开命令行,执行以下命令查看本机JRE的安装路径:
java -verbose
命令执行完毕后,会输出一大堆日志信息,其中有一行是类似于下面的内容:
[Opened C:\Program Files\Java\jre1.8.0_281\lib\rt.jar]
上述内容表示本机JRE的安装路径为C:\Program Files\Java\jre1.8.0_281。
- 打开pom.xml文件,添加以下依赖:
xml
<dependency>
<groupId>com.sun</groupId>
<artifactId>tools</artifactId>
<version>1.8.0</version>
<scope>system</scope>
<systemPath>${java.home}/lib/tools.jar</systemPath>
</dependency>
<dependency>
<groupId>com.sun</groupId>
<artifactId>jconsole</artifactId>
<version>1.8.0</version>
<scope>system</scope>
<systemPath>${java.home}/lib/jconsole.jar</systemPath>
</dependency>
注意:systemPath属性的值要填写本机JRE中的jar包路径,即上述命令输出中得到的路径。
方案二:从Maven仓库中下载jconsole.jar和tools.jar依赖
- 打开pom.xml文件,添加以下依赖:
xml
<dependency>
<groupId>com.sun.tools</groupId>
<artifactId>jconsole</artifactId>
<version>1.8.0</version>
</dependency>
<dependency>
<groupId>com.sun</groupId>
<artifactId>tools</artifactId>
<version>1.8.0</version>
</dependency>
- 保存pom.xml文件,执行以下命令,让Maven下载上述依赖:
mvn dependency:resolve
命令执行完毕后,Maven会自动下载jconsole.jar和tools.jar依赖到本地仓库中。
示例
以下是两个使用示例:
示例一:添加本机JRE中的jconsole.jar和tools.jar依赖
假设本机JRE的安装路径为C:\Program Files\Java\jre1.8.0_281,那么在pom.xml文件中添加以下依赖:
<dependency>
<groupId>com.sun</groupId>
<artifactId>tools</artifactId>
<version>1.8.0</version>
<scope>system</scope>
<systemPath>${java.home}/lib/tools.jar</systemPath>
</dependency>
<dependency>
<groupId>com.sun</groupId>
<artifactId>jconsole</artifactId>
<version>1.8.0</version>
<scope>system</scope>
<systemPath>${java.home}/lib/jconsole.jar</systemPath>
</dependency>
执行mvn clean package命令进行打包,即可解决找不到jconsole.jar和tools.jar的问题。
示例二:从Maven仓库中下载jconsole.jar和tools.jar依赖
在pom.xml文件中添加以下依赖:
<dependency>
<groupId>com.sun.tools</groupId>
<artifactId>jconsole</artifactId>
<version>1.8.0</version>
</dependency>
<dependency>
<groupId>com.sun</groupId>
<artifactId>tools</artifactId>
<version>1.8.0</version>
</dependency>
执行mvn dependency:resolve命令,Maven会自动下载jconsole.jar和tools.jar依赖到本地仓库中,然后再执行mvn clean package命令进行打包,即可解决找不到jconsole.jar和tools.jar的问题。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:解决java maven项目找不到jconsole-1.8.0.jar和tools-1.8.0.jar包问题 - Python技术站