史上最详细的Maven安装与配置 我看了下,的确是全网最细的博主
Maven下载地址
一种项目管理工具,让你方便的管理各种依赖,与之类似的还有Gradle
Maven 项目可以分为三个阶段:编译,测试,运行。
scope | 解释 | 作用 |
---|---|---|
compile(default) | 依赖参与项目的编译,测试,运行阶段。项目打包之后将会包含该依赖 | 所有使用compile的依赖都会被打入jar包 |
provided | 依赖仅参与项目编译,测试的阶段 | 意味着你需要自行导入依赖 |
runtime | 依赖仅参与项目测试,运行阶段。 | 不参与编译阶段 |
test | 依赖仅参与测试阶段的工作。典型的例子为 junit。 | |
system | system 与 provided 范围一致,只不过 system 需要使用 systemPath 属性指定本地路径,而 provided 将会从 Maven 仓库拉取。 | |
import |
Maven的scope属性
<dependency>
<groupId>wonderful-incgroupId>
<artifactId>dream-libraryartifactId>
<version>RELEASEversion>
<version>LATESTversion>
dependency>
How do I tell Maven to use the latest version of a dependency? - stackoverflow
如何跳过test阶段,即test中的代码不会被打入jar包
在右侧的maven中,找到一个蓝色⚡符,鼠标移到下面,显示Toggle ‘Skip Tests’ Mode,很多打包失败的情况,先试试排除掉test文件夹下的代码,因为如果某个项目是开源的,基本都是多人开发,test中的某些东西编译不一定保证正确。
<build>
<resources>
<resource>
<directory>src/main/resourcesdirectory>
<includes>
<include>**/**include>
includes>
<filtering>truefiltering>
resource>
resources>
build>
[maven 打成可运行jar_qeiwang的博客-CSDN博客]()
1.在IDEA中,File -> Settings -> Build, Execution, Deployment -> Build Tools -> Maven
2.勾选Print exception stack traces ,并且Output level 选择为Debug级别。
这样在maven打包时,就会输出最详细的信息,供你查询。
当maven打包遇到了依赖冲突时,要找准,是什么包遇到了依赖冲突,此时需要利用maven打包遇到问题如何查找去查找包名。
1.找到包名
2.确定要排除的包以及版本
3.在其父依赖中,进行排除。
比如
<dependency>
<groupId>com.alibaba.nacosgroupId>
<artifactId>nacos-clientartifactId>
<version>1.1.0version>
<exclusions>
<exclusion>
<groupId>com.alibabagroupId>
<artifactId>fastjsonartifactId>
exclusion>
exclusions>
dependency>
com…internal相关jar包问题
遇到这个问题,一般是涉及到了一些加密算法,而这些加密算法是sun公司的私有
好的项目命名将使你快速了解这个jar包的含义,请参考以下方式
<version>${base.version}.${yourSdk1.version}.${yourSdk2.iterations}version>
<properties>
<maven.compiler.source>6maven.compiler.source>
<maven.compiler.target>6maven.compiler.target>
<base.version>11base.version>
<yourSdk1.version>1.3yourSdk1.version>
<yourSdk2.version>${base.version}.${yourSdk1.version}.1yourSdk2.version>
properties>
手动导入Maven依赖
以下面的Maven依赖为例
<dependency>
<groupId>org.apache.phoenixgroupId>
<artifactId>phoenix-coreartifactId>
<version>4.13.2-cdh5.11.2version>
<scope>providedscope>
dependency>
mvn install:install-file -Dfile=F:/Projects_zbDependency/project-jdbcProxy/jdbc-proxy-phoneix/lib/phoenix-core-4.13.2-cdh5.11.2.jar -DgroupId=org.apache.phoenix -DartifactId=phoenix-core -Dversion=4.13.2-cdh5.11.2 -Dpackaging=jar
当版本不和,可能导致以下错误,需要查看日志解决,你可以选择升级IDEA或降级Maven
Unable to import maven project: See logs for details
IDEA 2019.1.3 与 Maven3.6.3不合
IDEA版本与MAVEN版本对应关系
Duplicate zip entry问题解决
1.Maven Repository Maven中央仓库