java project package tool / apache maven / ant / maven / gradle
s
- java project 下,多模块写代码,app模块如何引用common模块下的 resources文件如config.yml
1、在common
模块中创建resources
目录: 确保config.yml
文件位于common/src/main/resources
目录下。
common
└── src
└── main
└── resources
└── config.yml
2、确保common
模块的资源文件被正确打包: 在common
模块的 pom.xml
文件中,确保资源文件被正确地打包到 JAR 文件中。你可以使用如下 Maven 插件配置:
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
</build>
这样配置会确保资源文件被包含在common
模块的 JAR 文件中。
3、在app
模块中引用common
模块: 在app
模块的 pom.xml
文件中添加对common
模块的依赖。
<dependencies>
<dependency>
<groupId>your.groupId</groupId>
<artifactId>common</artifactId>
<version>your.version</version>
</dependency>
</dependencies>
4、 在app
模块中使用common
模块的资源文件: 在app
模块的代码中,你可以通过类加载器来访问common
模块的资源文件。
// 在 app 模块的代码中
InputStream inputStream = getClass().getClassLoader().getResourceAsStream("config.yml");
// 然后可以使用 inputStream 加载配置文件
或者,如果你使用 Spring Boot,你可以使用 @PropertySource
注解来加载配置文件:
@PropertySource("classpath:config.yml")
确保在进行这些操作时,Maven 或 Gradle 构建配置正确,以便资源文件正确地包含在 JAR 文件中。这样,app
模块就可以访问并使用common
模块中的config.yml
文件了。
https://repo.maven.apache.org/maven2
C:\Users\Lindows>mvn -version
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: D:\Lindows\dev\apache-maven-3.6.3\bin\..
Java version: 1.8.0_212-3-redhat, vendor: Oracle Corporation, runtime: D:\Program Files\RedHat\java-1.8.0-openjdk-1.8.0.212-3\jre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
使用IntelliJ IDEA 配置Maven
https://www.cnblogs.com/sigm/p/6035155.html
Nexus Repository Manager OSS 2.14.5-02
http://maven.cns*****.com/#welcome
Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。 当你使用Maven的时候,你用一个明确定义的项目对象模型来描述你的项目,然后 Maven 可以应用横切的逻辑,这些逻辑来自一组共享的(或者自定义的)插件。
使用Ant,Maven构建Eclipse RCP Product
http://eclipsercpforum.group.iteye.com/group/wiki/627
通常我们打包Product的时候,一般都是通过Product的export操作来进行的,但这样的做法,则限制了Continous Integration的自动化执行,那么,应该如何编写自动化构建脚本呢?
、、、
1、maven打包成可执行jar包 在pom.xml中添加
<build>
<plugins>
...
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>com.xahl.conf.App</mainClass> <!-- 含main方法的类 -->
</manifest>
</archive>
</configuration>
</plugin>
...
</plugins>
</build>
执行命令mvn assembly:assembly -Dmaven.test.skip=true(跳过测试)
则可以打包成可执行jar,并且可以把所有的依赖包都打进去
2、package -Dmaven.test.skip=true -e 打普通jar
3配置sts工具maven命令 右键 Run as -->run Comfiguration --> Maven build --> name : package Goals:-Dmaven.test.skip=true -e --> run
4 打client jar call mvn install -Dmaven.test.skip=true
end