`
jaesonchen
  • 浏览: 313211 次
  • 来自: ...
社区版块
存档分类
最新评论

使用maven命令来分析jar包之间的依赖关系

 
阅读更多

一直有个疑问就是,我在pom文件里面引用了那些配置信息,它是如何找到各自的依赖的,后来发现原来一些jar包的配置信息已经自己在开发的时候就写入了pom信息了,各自的依赖都在maven官方仓库里挂着,这个我们自己不用操心,那既然这样,我们又该从哪里查到这些依赖信息呢,这就需要用maven的命令了,如果你是在myeclipse或者eclipse中集成的maven开发环境,那么看到如下截图,你就明白了.

maven

maven

下面是一些别的命令,如果想在myeclipse中运行,请去掉mvn三个单词~~

1、创建一个新的Maven项目:

mvn archetype:create -DgroupId=org.sonatype.mavenbook.ch3 -DartifactId=simple -DpackageName=org.sonatype.mavenbook

2、构建打包应用:

mvn install[在pom.xml同级目录下执行]

3、查看项目完整的pom.xml文件,包括系统默认设置以及用户自定义设置:

mvn help:effective-pom

4、生成报告或者文档:

mvn site

5、mvn exec:java执行目标类

mvn exec:java -Dexec.mainClass=org.sonatype.mavenbook.weather.Main

6、查看插件的完整描述:

mvn help:describe -Dplugin=exec-Dfull

7、找出该项目所依赖的项目(jar)列表:

mvn dependency:resolve
mvn dependency:analyze(找出项目非直接依赖)

结果如下:

[INFO]The following files have been resolved:[INFO]    com.ibm.icu:icu4j:jar:2.6.1:compile
[INFO]    commons-collections:commons-collections:jar:3.1:compile
[INFO]    commons-lang:commons-lang:jar:2.1:compile
[INFO]    dom4j:dom4j:jar:1.6.1:compile
[INFO]    jaxen:jaxen:jar:1.1.1:compile
[INFO]    jdom:jdom:jar:1.0:compile
[INFO]    junit:junit:jar:3.8.1:test
[INFO]    log4j:log4j:jar:1.2.14:compile
[INFO]    oro:oro:jar:2.0.8:compile
[INFO]    velocity:velocity:jar:1.5:compile
[INFO]    xalan:xalan:jar:2.6.0:compile
[INFO]    xerces:xercesImpl:jar:2.6.2:compile
[INFO]    xerces:xmlParserAPIs:jar:2.6.2:compile
[INFO]    xml-apis:xml-apis:jar:1.0.b2:compile
[INFO]    xom:xom:jar:1.0:compile

8、查看整个项目的依赖树:

mvn dependency:tree

结果如下:

[INFO] org.sonatype.mavenbook.ch04:simple-weather:jar:1.0[INFO]+- log4j:log4j:jar:1.2.14:compile
[INFO]+- dom4j:dom4j:jar:1.6.1:compile
[INFO]|  \- xml-apis:xml-apis:jar:1.0.b2:compile
[INFO]+- jaxen:jaxen:jar:1.1.1:compile
[INFO]|+- jdom:jdom:jar:1.0:compile
[INFO]|+- xerces:xercesImpl:jar:2.6.2:compile
[INFO]|  \- xom:xom:jar:1.0:compile
[INFO]|+- xerces:xmlParserAPIs:jar:2.6.2:compile
[INFO]|+- xalan:xalan:jar:2.6.0:compile
[INFO]|     \- com.ibm.icu:icu4j:jar:2.6.1:compile
[INFO]+- velocity:velocity:jar:1.5:compile
[INFO]|+- commons-collections:commons-collections:jar:3.1:compile
[INFO]|+- commons-lang:commons-lang:jar:2.1:compile
[INFO]|  \- oro:oro:jar:2.0.8:compile
[INFO] \- junit:junit:jar:3.8.1:test

9、查看完整的依赖,包括那些因为冲突而被拒绝引入的依赖:

mvn install -X

10、打包应用(jar):

mvn install assembly:assembly

11、在 Jetty Servlet 容器中启动你的 web 应用:

mvn jetty:run

12、重新编译:

mvn compile
分享到:
评论

相关推荐

    maven打包 maven打jar包详细步骤

    本文将详细讲解如何使用Maven来打包一个Java项目,并创建JAR文件。 首先,Maven有三个主要生命周期阶段:`clean`、`default`(也称为`compile`)和`install`。每个阶段包含一系列的阶段(或者称为目标,如`compile`...

    maven命令下载jar包.rar

    标题“maven命令下载jar包.rar”提示我们,这是一个关于使用Maven命令行来手动下载特定jar包的方法。在某些情况下,当通过正常构建过程无法获取jar包时,这种方法可能会派上用场。 描述中提到,“在pom.xml配置你要...

    maven的本地仓库jar包

    当一个项目运行`mvn install`命令时,Maven会将该项目的编译结果(如JAR文件)安装到本地仓库,使得其他项目可以通过依赖管理直接使用。 描述中提到的“maven的本地仓库jar包”可能是指一个包含各种常用库的压缩...

    Springboot 打Jar包,Maven完美解决本地Jar包自动打入Springboot Jar包中

    - 使用以下命令安装Jar包到本地Maven仓库: ```sh mvn install:install-file -Dfile=sojson-demo.jar -DgroupId=com.sojson -DartifactId=com.sojson.demo -Dversion=1.0 -Dpackaging=jar ``` - 其中: - `-...

    maven jar包直接根据pom下载

    7. **优化依赖**:Maven提供了`dependency:tree`命令,可以查看项目的依赖树,帮助开发者理解并优化依赖关系,避免不必要的jar包下载。 通过以上步骤,开发者可以高效地管理和下载Java项目所需的jar包,大大提高了...

    maven下载QRCode.jar包

    总的来说,通过Maven下载`QRCode.jar`包,可以帮助Java开发者轻松地集成二维码生成功能,而无需手动下载和管理依赖。只需正确配置`pom.xml`文件,Maven就能自动处理所有下载和依赖管理,使项目构建更加简洁高效。

    JxBrowser开发maven仓库jar包

    由于JxBrowser在maven仓库中可能不再可用,对于需要使用此库的开发者来说,直接下载jar包并将其部署到本地或私有Maven仓库是必要的步骤。 首先,我们需要理解Maven仓库的概念。Maven仓库是存储项目依赖的地方,分为...

    IntelliJ IDEA 批量导出Maven项目依赖的jar包.docx

    接下来,我们将详细介绍如何使用IntelliJ IDEA批量导出Maven项目中的依赖jar包。 ##### 1. 配置Maven插件 首先,需要确保项目中已经正确配置了Maven插件。打开项目的`pom.xml`文件,在`<build>`标签内添加如下配置...

    maven依赖本地jar包

    使用`<scope>system</scope>`和`<systemPath>`的方式,可以有效地将本地的JAR包纳入到Maven项目的依赖管理中。 #### 2. 安装本地JAR至本地仓库 另一种更为推荐的做法是将本地的JAR包安装到Maven的本地仓库中,通过...

    maven打可执行JAR包

    在本文中,我们将详细讨论如何使用Maven来创建可执行的JAR包,使得通过`java -jar`命令可以直接运行。我们提供两种方法来实现这个目标。 ### 方法一:使用`maven-assembly-plugin` 1. **集成插件**:在`pom.xml`...

    maven方式下载指定jar

    3. **运行Maven命令**:保存`pom.xml`后,在命令行或终端中进入`download-jar`目录,然后运行`mvn dependency:get`命令。例如,对于上面的配置,命令将是: ``` mvn dependency:get -Ddependency=log4j:log4j:...

    maven批量导入第三方jar包至本地库工具

    在Java开发中,Maven是一个广泛使用的构建工具,它依赖于中央仓库中的各种jar包来构建项目。然而,有时候我们可能需要使用一些不在中央仓库中的第三方库,这就需要我们将这些jar包手动导入到Maven的本地库。"maven...

    maven安装jar包工具

    在命令行中,我们可以使用Maven的`install:install-file`命令,提供jar包的路径、groupId、artifactId、version和packaging等信息。例如: ``` mvn install:install-file -Dfile=path/to/jar.jar -DgroupId=...

    maven本地仓库清除无效jar包脚本

    本文将详细介绍如何使用一个特定的脚本来清理Maven本地仓库中的无效jar包,并解析脚本的工作原理以及在实际操作中需要注意的事项。 首先,Maven的本地仓库默认位于用户的主目录下的`.m2`文件夹中,路径通常是`~/.m2...

    Maven中主要jar包集合

    本文将深入探讨"Maven中主要jar包集合"这一主题,旨在帮助初学者理解Maven的工作原理以及如何利用它来高效地管理jar包。 首先,我们要明白什么是Maven。Maven是Apache软件基金会开发的一个项目管理和综合工具,主要...

    elasticsearch 5.4.0 maven依赖jar包

    6. **Maven 依赖树**:使用 `mvn dependency:tree` 命令可以查看项目的完整依赖树,帮助开发者了解所有直接和间接依赖的 jar 包。 7. **本地 Maven 仓库**:Maven 下载的 jar 包会被存储在用户的本地仓库中,默认...

    maven的jar包跟源码包

    Maven的POM(Project Object Model)配置文件允许我们定义项目的依赖关系,包括jar包的版本和依赖传递性。 ** Maven的源码包 ** 源码包,通常以".src.zip"或".src.tar.gz"的形式存在,包含了项目的全部源代码,...

    maven打成可运行jar包

    当前pom.xml中详细的记录了将maven项目打成可运行jar包的完整代码,使用maven的插件maven-assembly-plugin,同时将所有依赖打到jar包中,亲测可用。

Global site tag (gtag.js) - Google Analytics