当前位置: 首页 > news >正文

java极简maven项目

因学习自动化软件发布,发现大部分项目都是java,故总结了一下新建一个简单的java的maven项目的过程,方便后面快速搭建一个测试项目,用于软件发布测试。

1、安装需要的软件

软件安装目录
IntelliJ IDEA 2025.2.3C:\idea
java17C:\jdk-17.0.16+8
maven3.9C:\apache-maven-3.9.9

2、系统环境变量配置

系统–高级系统设置–高级–环境变量

系统变量备注
JAVA_HOMEC:\jdk-17.0.16+8
MAVEN_HOMEC:\apache-maven-3.9.9
PATH%JAVA_HOME%\bin;%MAVEN_HOME%\bin;加在最前面

3、用idea软件创建工程

C:\idea\bin\idea64.exe

创建工程后情况

4、编写代码

4.1、Main.java

src/main/java/org/example/Main.java

packageorg.example;importorg.springframework.beans.factory.annotation.Value;importorg.springframework.boot.SpringApplication;importorg.springframework.boot.autoconfigure.SpringBootApplication;importorg.springframework.web.bind.annotation.RequestMapping;importorg.springframework.web.bind.annotation.ResponseBody;importorg.springframework.stereotype.Controller;@Controller@SpringBootApplicationpublicclassMain{@Value("${test.env}")privateStringenv;@Value("${test.db}")privateStringdb;@RequestMapping("/hello")@ResponseBodypublicStringhome(){return"env:"+env+"/hello, db:"+db;}publicstaticvoidmain(String[]args){SpringApplication.run(Main.class,args);}}

4.2、pom.xml

<projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>org.example</groupId><artifactId>javademo</artifactId><version>0.0.1-SNAPSHOT</version><packaging>jar</packaging><name>javademo</name><description>Spring Boot Demo</description><!-- Spring Boot 父工程 --><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.2.5</version><relativePath/></parent><properties><java.version>17</java.version></properties><dependencies><!-- Web / MVC / Controller / Tomcat --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency></dependencies><build><plugins><!-- 让 java -jar 可运行 --><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>

4.3、配置文件

4.3.1、application-prd.yml

src/main/resources/application-prd.yml test: env: prd-env db: prd-db

4.3.2、application-test.yml

src/main/resources/application-test.yml test: env: test-env db: test-db

5、用maven修复所有的错误提示

5.1、创建idea的maven本地仓库目录

C:\Users\Administrator\.m2\repository

5.2、准备idea的maven用户设置文件settings.xml

C:\Users\Administrator\.m2\settings.xml
<settingsxmlns="http://maven.apache.org/SETTINGS/1.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 https://maven.apache.org/xsd/settings-1.0.0.xsd"><!-- 使用内网 Nexus 作为所有仓库的镜像 --><mirrors><mirror><id>nexus</id><name>Internal Nexus Repository</name><url>http://10.1.1.1:8081/nexus/content/groups/public/</url><mirrorOf>*</mirrorOf></mirror></mirrors></settings>

5.3 配置maven库

5.4 用maven库修复错误提示

在idea的右侧点击maven图标,点刷新按钮,选中重新加载所有Maven项目,修复所有问题

6、手动编译

mvn clean package -DskipTests

7、手动编译成功情况

PS C:\Users\Administrator\IdeaProjects\javademo>mvn clean package-DskipTests [INFO] Scanningforprojects... [INFO] [INFO]------------------------<org.example:javademo>------------------------[INFO] Building javademo0.0.1-SNAPSHOT [INFO] from pom.xml [INFO]--------------------------------[ jar ]---------------------------------[INFO] [INFO]---clean:3.3.2:clean(default-clean)@ javademo---[INFO] Deleting C:\Users\Administrator\IdeaProjects\javademo\target [INFO] [INFO]---resources:3.3.1:resources(default-resources)@ javademo---[INFO] Copying2resources from src\main\resourcestotarget\classes [INFO] Copying0resource from src\main\resourcestotarget\classes [INFO] [INFO]---compiler:3.11.0:compile(default-compile)@ javademo---[INFO] Changes detected-recompiling themodule! :source[INFO] Compiling1source filewithjavac [debugrelease17]totarget\classes [INFO] [INFO]---resources:3.3.1:testResources(default-testResources)@ javademo---[INFO]skipnon existing resourceDirectory C:\Users\Administrator\IdeaProjects\javademo\src\test\resources [INFO] [INFO]---compiler:3.11.0:testCompile(default-testCompile)@ javademo---[INFO] Changes detected-recompiling themodule! :dependency[INFO] [INFO]---surefire:3.1.2:test(default-test)@ javademo---[INFO] Tests are skipped. [INFO] [INFO]---jar:3.3.0:jar(default-jar)@ javademo---[INFO] Building jar:C:\Users\Administrator\IdeaProjects\javademo\target\javademo-0.0.1-SNAPSHOT.jar [INFO] [INFO]---spring-boot:3.2.5:repackage(repackage)@ javademo---[INFO] Replacing main artifact C:\Users\Administrator\IdeaProjects\javademo\target\javademo-0.0.1-SNAPSHOT.jarwithrepackaged archive,adding nested dependenciesinBOOT-INF/. [INFO] The original artifact has been renamedtoC:\Users\Administrator\IdeaProjects\javademo\target\javademo-0.0.1-SNAPSHOT.jar.original [INFO]------------------------------------------------------------------------[INFO] BUILD SUCCESS [INFO]------------------------------------------------------------------------[INFO] Totaltime:3.525s [INFO] Finishedat:2025-12-15T16:00:36+08:00[INFO]------------------------------------------------------------------------PS C:\Users\Administrator\IdeaProjects\javademo>PS C:\Users\Administrator\IdeaProjects\javademo>dir target 目录:C:\Users\Administrator\IdeaProjects\javademo\target Mode LastWriteTimeLengthName---------------------------d-----2025-12-1516:00classes d-----2025-12-1516:00generated-sources d-----2025-12-1516:00generated-test-sources d-----2025-12-1516:00maven-archiver d-----2025-12-1516:00maven-statusd-----2025-12-1516:00test-classes-a----2025-12-1516:0019763863javademo-0.0.1-SNAPSHOT.jar-a----2025-12-1516:003069javademo-0.0.1-SNAPSHOT.jar.original

8、启动生产环境

java -jar javademo-0.0.1-SNAPSHOT.jar --spring.profiles.active=prd

9、启动测试环境


http://www.cnnetsun.cn/news/69375.html

相关文章:

  • 构造函数返回对象时的陷阱:为什么 `return {}` 会覆盖 new 操作符的默认行为
  • 宏任务与微任务的边界:为什么在不同浏览器环境下 Promise 的执行时序可能不一致
  • 智能工牌如何帮房企智能盘客,提升销售转化?
  • LP3713CH_5W/SOP7隔离适配器和充电器自供电PSR控制芯片 典型应用电路
  • FT8393MB1(5V/2.4A)12W线式电源控制芯片 典型应用电路
  • [吾爱大神原创工具] Python脚本打包为“EXE”工具(史上最高颜值)
  • 当电机遇上滑移:四轮驱动车能耗与稳定性的双线作战
  • AI视频工具普及,为何内容团队工时反增20%?
  • SQL多表查询实战:7种JOIN详解
  • 变量传递总是出错?掌握这3个核心原理,轻松打通R与Python壁垒
  • jmeter基础使用方法
  • 直接打开MATLAB,先来点刺激的——搞个巴特沃斯低通滤波器。别被名字吓到,其实就是个能让低频信号通过,高频滚犊子的电路模型。看这段
  • 大模型应用开发核心:构建高效准确的提示词指南
  • OpenAI发布GPT-5.2:是王者归来还是强弩之末?
  • HTTPS DDoS 排查 异常流量到抓包分析
  • 12、Docker与Kubernetes使用指南
  • 行为树优化全攻略(性能翻倍的4个秘密武器)
  • 直流电机双闭环调速系统仿真模型:转速外环与电流内环PI参数整定指南,无静差跟踪实现功能介绍
  • 滑膜控制下的差动制动防侧翻稳定系统设计与仿真验证:横摆力矩分配策略及其实车测试分析
  • 模型压缩技术详解:剪枝、量化与知识蒸馏,让你的大模型轻量化部署
  • Iridescent:Day23
  • Laravel 13多模态权限实现技巧(99%的开发者忽略的关键细节)
  • 测试数据自动生成方法:策略、实施与最佳实践
  • 【医疗数据安全防线】:如何用PHP构建自动备份体系
  • 【R-Python模型融合实战】:揭秘跨平台建模结果验证的5大核心步骤
  • 从田间到R控制台,方差分析如何改变传统农业决策?
  • 基于comsol的多层冻土地基冻涨模型研究:低温热流固三场耦合效应的固体力学模拟
  • 2025年最新阿勒泰地区道路矢量数据
  • 设计模式[10]——外观模式一分钟彻底说清楚
  • Temu 分销重塑跨境生态:轻资产时代的新增长法则