Maven中解决system的jar依赖,打包复制问题

简介:

依赖管理配置:

1
2
3
4
5
6
7
8
< dependency >
     < groupId >com.alibaba</ groupId >
     < artifactId >fastjson</ artifactId >
     < version >1.2.29</ version >
     < scope >system</ scope >
     <!--<systemPath>${project.basedir}/lib/fastjson-1.2.29-SNAPSHOT.jar</systemPath>-->
     < systemPath >E:/projectsx/lecing/lecing5/code/back/lib/fastjson-1.2.29-SNAPSHOT.jar</ systemPath >
</ dependency >


依赖配置:

1
2
3
4
< dependency >
     < groupId >com.alibaba</ groupId >
     < artifactId >fastjson</ artifactId >
</ dependency >

build配置:


父POM中:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
< build >
     < finalName >${project.artifactId}</ finalName >
     < resources >
         < resource >
             < directory >${basedir}/src/main/java</ directory >
             < includes >
                 < include >**/*.xml</ include >
                 < include >**/*.properties</ include >
             </ includes >
         </ resource >
         < resource >
             < directory >${basedir}/src/main/resources</ directory >
         </ resource >
     </ resources >
     < pluginManagement >
         < plugins >
             <!-- 资源文件拷贝插件 -->
             < plugin >
                 < groupId >org.apache.maven.plugins</ groupId >
                 < artifactId >maven-resources-plugin</ artifactId >
                 < version >2.7</ version >
                 < configuration >
                     < encoding >UTF-8</ encoding >
                 </ configuration >
             </ plugin >
             <!-- java编译插件 -->
             < plugin >
                 < groupId >org.apache.maven.plugins</ groupId >
                 < artifactId >maven-compiler-plugin</ artifactId >
                 < version >3.5.1</ version >
                 < configuration >
                     < source >1.8</ source >
                     < target >1.8</ target >
                     < encoding >UTF-8</ encoding >
                 </ configuration >
             </ plugin >
         </ plugins >
     </ pluginManagement >
</ build >

子POM中:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
< build >
     < resources >
         < resource >
             < directory >${basedir}/src/main/java</ directory >
             < includes >
                 < include >**/*.xml</ include >
                 < include >**/*.properties</ include >
             </ includes >
         </ resource >
         < resource >
             < directory >${basedir}/src/main/resources</ directory >
         </ resource >
     </ resources >
     < plugins >
         < plugin >
             < groupId >org.apache.maven.plugins</ groupId >
             < artifactId >maven-dependency-plugin</ artifactId >
             < version >3.0.2</ version >
             < executions >
                 < execution >
                     < phase >package</ phase >
                     < goals >
                         < goal >copy-dependencies</ goal >
                     </ goals >
                 </ execution >
             </ executions >
             < configuration >
                 < includeScope >system</ includeScope >
                 < outputDirectory >${project.build.directory}/${project.build.finalName}/WEB-INF/lib</ outputDirectory >
             </ configuration >
         </ plugin >
     </ plugins >
</ build >

子POM中的插件才是解决的关键。



本文转自 leizhimin 51CTO博客,原文链接:http://blog.51cto.com/lavasoft/1973756,如需转载请自行联系原作者

相关文章
|
8月前
|
Java Maven 微服务
微服务——SpringBoot使用归纳——Spring Boot集成 Swagger2 展现在线接口文档——Swagger2 的 maven 依赖
在项目中使用Swagger2工具时,需导入Maven依赖。尽管官方最高版本为2.8.0,但其展示效果不够理想且稳定性欠佳。实际开发中常用2.2.2版本,因其稳定且界面友好。以下是围绕2.2.2版本的Maven依赖配置,包括`springfox-swagger2`和`springfox-swagger-ui`两个模块。
335 0
|
7月前
|
存储 Java Maven
Maven系统级别依赖:解决部署时Jar包缺失问题
以上就是关于Maven系统级别依赖解决部署时Jar包缺失问题的解答,希望对你有所帮助。在软件开发中,遇到问题并解决问题是常态,希望你能够善用这些工具,解决你遇到的问题。
472 28
|
11月前
|
Java Maven
java项目中jar启动执行日志报错:no main manifest attribute, in /www/wwwroot/snow-server/z-server.jar-jar打包的大小明显小于正常大小如何解决
在Java项目中,启动jar包时遇到“no main manifest attribute”错误,且打包大小明显偏小。常见原因包括:1) Maven配置中跳过主程序打包;2) 缺少Manifest文件或Main-Class属性。解决方案如下:
2610 8
java项目中jar启动执行日志报错:no main manifest attribute, in /www/wwwroot/snow-server/z-server.jar-jar打包的大小明显小于正常大小如何解决
|
9月前
|
前端开发 JavaScript Java
Java打包jar运行时分离lib和jar
在`pom.xml`的`build`节点中,设置`packaging`为`jar`,并配置插件分离依赖库到`lib`目录和资源文件到`resources`目录。这样可以在运行时通过`-Dloader.path=lib,resources`加载外部依赖和资源文件,便于独立升级依赖库和修改资源文件,而无需重新打包程序。具体插件包括`maven-dependency-plugin`、`maven-resources-plugin`和`spring-boot-maven-plugin`等。
482 1
|
10月前
|
缓存 架构师 Java
Maven实战进阶(01)面试官:Maven怎么解决依赖冲突?| 有几种解决方式
本文介绍了Maven的核心功能和依赖管理技巧。Maven是基于项目对象模型(POM)的构建工具,具备跨平台、标准化、自动化等特性。其三大核心功能为依赖管理、仓库管理和项目构建。依赖管理通过pom.xml文件引入第三方组件并自动下载;仓库管理涉及中央仓库、私服和本地仓库;项目构建则通过生命周期管理编译、测试、打包等流程。文章还详细讲解了依赖冲突的解决方法,包括默认规则、手工排除和版本指定等策略。
|
11月前
|
缓存 Java Maven
【简单四步教你解决♥十分有效】Maven依赖报错、依赖或插件导入失败的万能解决办法
【简单四步教你解决♥十分有效】Maven依赖报错、依赖或插件导入失败的万能解决办法!在处理Maven项目问题时,首先检查Maven配置是否正确。接着通过“File--Invalidata Caches”清除IDEA缓存并重启。使用Maven命令`mvn dependency:purge-local-repository`和`mvn dependency:resolve`清除本地依赖缓存。最后,在Terminal中输入`mvn clean install`完成构建。
3320 1
【简单四步教你解决♥十分有效】Maven依赖报错、依赖或插件导入失败的万能解决办法
|
Java 应用服务中间件 Maven
Maven的三种项目打包方式——pom,jar,war的区别
Maven 提供了多种打包方式,分别适用于不同类型的项目。pom 用于父项目或聚合项目,便于项目的结构和依赖管理;jar 用于Java类库或可执行的Java应用程序;war 则专用于Java Web应用程序的部署。理解这些打包方式的用途和特点,可以帮助开发者更好地配置和管理Maven项目,确保构建和部署过程的顺利进行。无论是单模块项目还是多模块项目,选择合适的打包方式对于项目的成功至关重要。
1762 3
|
Java
[JarEditor]可直接修改jar包的IDEA插件
### 修改JAR包变得更简单:JarEditor插件简介 **背景:** 开发中常需修改JAR包中的class文件,传统方法耗时费力。JarEditor插件让你一键编辑JAR包内文件,无需解压。 **插件使用:** 1. **安装:** 在IDEA插件市场搜索JarEditor并安装。 2. **修改class:** 打开JAR文件中的class,直接编辑,保存后一键构建更新JAR。 3. **文件管理:** 右键菜单支持在JAR内新增/删除/重命名文件等操作。 4. **搜索:** 使用内置搜索功能快速定位JAR包内的字符串。
1560 2
[JarEditor]可直接修改jar包的IDEA插件
|
弹性计算 Java Serverless
Serverless 应用引擎操作报错合集之上传自定义JAR包,启动时报错,是什么导致的
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
关系型数据库 Java 分布式数据库
PolarDB产品使用问题之部署到服务器上的Java应用(以jar包形式运行)无法连接,如何解决
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。

推荐镜像

更多