场景:使用idea编译器通过File->Project Structure->Libraries点击左上角+号来引入第三方jar包,写代码时候没有问题,但是在编译的时候出现错误信息,类似于下面的格式:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project xxxxx
ls: Compilation failure: Compilation failure:
[ERROR] /D:/work/xxx.java:[4,20] 程序包cn.xxx.xxx
1不存在
[ERROR] /D:/work/xxx.java:[5,20] 程序包cn.xxx.xxx
1不存在
[ERROR] /D:/work/xxx.java:[9,39] 程序包org.apache.
commons.codec.binary不存在
试着查找资料,执行mvn compile -X -e
查看mvn compile的编译程序所依赖的classpath:
[DEBUG] -d D:\work\myproject\xxx\target\classes -classpath D:\work\myproject\xxx\target\classes;C:\Users\xxx\.m2\repository\commons-codec\commons-codec\1.11\commons-codec-1.11.jar;C:\Users\xxx\.m2\repository\com\google\code
\gson\gson\2.5\gson-2.5.jar;C:\Users\xxx\.m2\repository\args4j\args4j\2.33\args4j-2.33.jar;C:\Users\xxx\.m2\repository\org\apache\logging\log4j\log4j-api\2.3\log4j-api-2.3.jar;C:\Users\xxx\.m2\repository\org\apache\logging\log4j\lo
g4j-core\2.3\log4j-core-2.3.jar;C:\Users\xxx\.m2\repository\org\bouncycastle\bcprov-jdk15on\1.55\bcprov-jdk15on-1.55.jar; -sourcepath D:\xxxx\src\main\java; -g -nowarn -target 1.5 -source 1.5 -encoding utf-8
发现没有包含目标目录,查了半天,可以通过自己在本地通过mvn:install:install-file
命令来安装本地库,然后就可以向pom.xml正常的添加依赖就可以了。命令格式为(当然有见解的写法,详情请见这里):
mvn install:install-file -Dfile=<path-to-file> -DgroupId=<group-id> \
-DartifactId=<artifact-id> -Dversion=<version> -Dpackaging=<packaging>
-
-Dfile:jar包全路径
-
-DgroupId:groupId
-
-Dversion:version info
-
-Dpackaging:packaging(ex:jar)
执行命令成功后出现下面格式提示:
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------< org.apache.maven:standalone-pom >-------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] --------------------------------[ pom ]---------------------------------
[INFO]
[INFO] --- maven-install-plugin:2.4:install-file (default-cli) @ standalone-pom ---
[INFO] Installing D:\xxx\xxx.jar to C:\Users\xxx\.m2\repository\xxx\1.0\xxx.jar
[INFO] Installing C:\Users\xxx\AppData\Local\Temp\mvninstall7505857374038575294.pom to C:\Users\xxx\.m2\repository\xxx\1.0\xxx.pom
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.816 s
[INFO] Finished at: 2019-11-04T18:11:09+08:00
[INFO] ------------------------------------------------------------------------
之后正常添加依赖即可。 reference:
[1]maven.apache.org/guides/mini…