maven对于互联网开发,进行版本管理有着不可或缺的作用;
而经常开发的程序猿直接联调或者依赖未上线或deploy的版本,需要在本地编译打包通过,如果pom文件依赖了maven库里的,则会出现冲突;
那么怎样进行本地jar依赖打包编译呢?
提供3种方式:
第一种方式:更改pom文件:
将原来的pom依赖,更改为新的依赖,如下面代码,加systemPath和scope指定你文件的位置
<!-- <dependency>
<groupId>com.xiaonei.xce</groupId>
<artifactId>oce-adapter</artifactId>
<version>1.1-SNAPSHOT</version>
</dependency> -->
<dependency>
<groupId>com.xiaonei.xce</groupId>
<artifactId>oce-adapter</artifactId>
<version>1.1-SNAPSHOT</version>
<systemPath>/home/penuel/renren/other-jar/oce-adapter-1.1-SNAPSHOT.jar
</systemPath>
<scope>system</scope>
</dependency>
注意:这样加依赖有2点需要注意:
1:如果你本身依赖的oce-adapter依赖了其他jar,而这些间接依赖的jar在你自己项目里还用到了,则需要在pom里加这些间接依赖,因为新改的这种依赖方式,只会添加一个jar进来;
2:这样添加之后,编译是可以通过的,但是打包还会会从本地maven库里取相应的jar(如果你本地库里没有,则不会打包到工程里),而不是把你配置的jar文件打包进去,所以需要打包完成后将lib下jar替换掉;
第二种方式:直接替换本地maven库里jar文件:
用下面命令:
mvn install:install-file
-DgroupId=com.xiaonei.xce-DartifactId=oce-adapter
-Dversion=1.1-SNAPSHOT
-Dfile=/home/penuel/renren/other-jar/oce-adapter-1.1-SNAPSHOT.jar
-Dpackaging=jar \-DgeneratePom=true
这样本地库里就是你要测试的这个jar了,打包编译两不误;记得备份之前的版本,说不定有用。(如果换不了,记得把之前的mavn库中该jar文件夹删掉,则执行命令即可)
第三种方式:取消pom依赖,直接在buildpath里面添加jar路径;或者在eclipse里面build path的add libraires,然后进行编译,打包也和第一种方式一样;
最后,如果测试过,包deploy了,记得mvn -U 或者改回pom文件。
分享到:
相关推荐
在`compile`阶段,Maven编译源代码;在`resources`阶段,处理资源文件(如配置文件);`test*`阶段则用于测试代码。最后,`package`阶段会根据项目的打包类型(如JAR或WAR)生成相应的文件,存放在`target`目录下。 ...
5. **项目构建**:配置完成后,Maven在构建项目时就能找到这些第三方jar包,从而顺利完成编译和打包。 使用这个工具的一个关键点是确保每个导入的jar包都有正确的坐标信息,否则Maven可能无法正确解析和使用它们。...
通过在`pom.xml`文件中配置,我们可以控制项目的构建过程,包括编译、测试、打包等。在IDEA中,Maven的集成使得这些操作变得非常便捷。 1. **配置Maven打包**: 在`pom.xml`文件中,我们需要添加`maven-jar-plugin...
通过以上步骤,你就可以使用Maven成功地编译和打包一个Java项目为JAR文件。确保你的环境中已经安装了Maven,并且配置了正确的Maven环境变量,然后按照上述方法操作即可。记住,Maven的强大在于它的标准化和自动化,...
在Java开发中,Maven是一个不可或缺的构建工具,它能够帮助开发者管理项目依赖、构建工件(如JAR或WAR包)以及执行各种生命周期阶段。当我们处理Web应用程序时,通常会将编译后的类文件(classes)打包到特定的目录...
在这个“reportng源码(maven编译打包)”项目中,我们可以看到ReportNG的源代码,它是使用Maven构建系统进行管理的。Maven是一个广泛使用的Java项目管理和集成工具,它帮助开发者自动化构建、依赖管理和项目信息管理...
Maven 是一个基于项目对象模型(Project Object Model,POM)的项目管理工具,广泛应用于 Java 项目的构建、测试和打包。然而,在使用 Maven 发布 Jar 包时,ometimes 中文字符会出现乱码问题。本文将详细介绍 Maven...
9. **插件管理**:Maven通过插件执行各种任务,如编译源码、打包项目、执行单元测试等,插件配置同样在`pom.xml`中完成。 10. **版本管理策略**:Maven遵循语义化版本管理(Semantic Versioning),如`1.0.0`、`...
在IT行业中,开发Java应用程序时,我们经常需要将代码打包成可执行的JAR文件,以便于部署和分发。本教程将详细讲解如何在IntelliJ IDEA(IDEA)中利用Maven进行混淆打包,确保代码的安全性并提高可维护性。 首先,...
4. 如果即使做了上述设置,本地Jar包仍未被打包到`WEB-INF/lib`,可能是因为IDEA的编译设置问题。检查项目的`Build`配置,确保编译结果被输出到待发布的目录。 总结来说,解决IDEA中Maven项目不能加入本地Jar包的...
这个插件可以帮助开发者更方便地在 Eclipse 中管理 Maven 项目,进行编译、测试、打包等操作,无需离开 IDE。 总结起来,"mavenjar 包" 的处理涉及到了 Maven 的 JAR 文件打包、依赖管理和 IDE 集成。正确地将 JAR ...
“源码”指的是Java项目的源代码,这些代码会被Maven编译并打包。“工具”在这里特指Maven,这是一个强大的构建工具,能够处理项目的构建、依赖管理和打包等任务。 【压缩包子文件的文件名称列表】:“helloWorld”...
"Jenkins+maven编译发部JAVA项目" Jenkins 是一个开源的自动化服务器,主要用于自动化各种任务,例如构建、测试、部署等。Maven 是一个项目管理工具,主要用于管理项目的依赖关系、编译、打包、部署等。下面将详细...
在本压缩包文件"示例源码_SpringBoot踩坑记录:IDEA+MAVEN本地 jar 包打包及引入使用_Qc20201223.zip"中,我们聚焦于SpringBoot项目开发过程中的一些常见问题,特别是涉及到IDEA(IntelliJ IDEA)和MAVEN的本地jar包...
标题 "spring 扫描jar maven 打包" 涉及的是在Java开发中,如何使用Spring框架和Maven工具来构建并打包一个项目,其中包含Spring对jar包的扫描以及Maven的打包流程。这里我们将深入探讨这两个关键概念。 1. **...
在下载完成后,你可以将这些jar包添加到本地Maven仓库,或者在pom.xml文件中指定本地路径。以下是一般的步骤: 1. **查找依赖**: 使用Maven的依赖树命令(`mvn dependency:tree`)来识别无法解析的依赖项,然后手动...
Storm 编程实践(安装 Maven-使用 Maven 编译运行代码-mvn 打包) 本文档介绍了 Storm 编程实践的实践报告,涵盖了安装 Maven、使用 Maven 编译运行代码和 mvn 打包等内容。报告中还包括了实验环境的配置、实验内容...
3. `maven-jar-install.bat`:这个名字暗示这可能是一个安装打包后的JAR文件到本地Maven仓库的脚本。执行`mvn install`命令会把项目打包并安装到本地仓库,供其他项目引用。 4. `maven-tree.bat`:这个脚本可能执行`...
Maven通过读取POM.xml文件,自动处理项目的构建过程,包括编译、测试、打包、依赖管理和部署。它简化了大型项目中的依赖关系管理,因为Maven可以通过中央仓库下载所需的库,并自动管理这些库的版本。 **Jenkins** ...