很多时候网络不畅通,会造成maven编译失败,这个时候可能我们会把mvn源改成阿里或者其他源,但如果仍不能获取到依赖的jar包,可以尝试下这个办法。
如果我们能够把jar包通过其他方式下载到本地,那么通过简单的一个命令,把依赖包安装到本地仓库中,那么会是编译过程减少很多痛苦。
今天在编译一个开源工程的时候,遇到下面的情况
[ERROR] Failed to execute goal on project bitsail-connector-hudi: Could not resolve dependencies for project com.bytedance.bitsail:bitsail-connector-hudi:jar:0.1.0-SNAPSHOT: Failed to collect dependencies at org.apache.hudi:hudi-common:jar:0.11.1 -> org.apache.hbase:hbase-server:jar:2.4.9 -> org.glassfish.web:javax.servlet.jsp:jar:2.3.2 -> org.glassfish:javax.el:jar:3.0.1-b06-SNAPSHOT: Failed to read artifact descriptor for org.glassfish:javax.el:jar:3.0.1-b06-SNAPSHOT: Could not transfer artifact org.glassfish:javax.el:pom:3.0.1-b06-SNAPSHOT from/to apache.snapshots (https://repository.apache.org/snapshots): Transfer failed for https://repository.apache.org/snapshots/org/glassfish/javax.el/3.0.1-b06-SNAPSHOT/javax.el-3.0.1-b06-SNAPSHOT.pom: Connect to repository.apache.org:443 [repository.apache.org/136.243.146.148] failed: Connection timed out: connect -> [Help 1]
那到外网把这个jar包下载下来
根据pom提示
执行下面这个命令
mvn install:install-file -Dfile=hudi-common-0.11.1.jar -DgroupId=org.apache.hudi -DartifactId=hudi-common -Dversion=0.11.1 -Dpackaging=jar
可以把hudi-common-0.11.1.jar包安装到本地仓库。