Maven打包部署

简介: Maven打包部署

Maven打Jar包

问题一

Eclipse突然SB告诉我类不存在还让我导包进来O__O "…,但是我明明有这个类。

这是不要慌,通过在网上搜索得知:由于eclipse的编译是基于时间戳的判断机制的。

因此当你按build all的时候有些eclipse认为时间戳没有改变的类不会被编译。 因此你可以先clean一下再编译。这个时候eclipse会将所有的以前编译信息清除然后编译。

eclipse --->project ----->clean...选项将工程中的.class文件删除,同时重新编译工程,类似于jbuild中的rebuild。

见下图Clean结束之后会自动进行Build

8c38832923e33585b75875c2e05887a0.png


641c176bd176ab04cd4cad0fe27936e0.png

问题二

找不到主类或无法加载主类的问题

是因为.java文件不在项目的src路径内,也就是说源代码未被eclipse编译,字节码不存在无法运行了,在项目名上右键 -> Builder Path -> Configure Build Path -> 选择Source面板,再点Add Folder, 把源代码所在的包路径的上层目录加进来,而且如果你是把两个类写在一个文件里的话,你在右键选择Run As Java Appication 的时候,要把光标至于包括main方法的类上(相当于指定主类入口)。


9e26105b0983c8d49afcf83d4c2b61a4.png

问题三

在打包之前配置maven的pom.xml 见下图

  <build>
    <plugins>
      <plugin>
           <groupId>org.springframework.boot</groupId>
           <artifactId>spring-boot-maven-plugin</artifactId>
          <executions>
            <execution>
              <goals>
                  <goal>repackage</goal>
              </goals>
            </execution>
           </executions>
         </plugin>
    </plugins>
  </build>

问题四

cmd打包时出现错误

clean (default-clean) on project open: Failed to clean project: Failed to delete

这个是因为windows只会告诉你该文件被其他程序占用,但不会告诉是哪个!

一般情况下给Maven项目打包的话要先将tomcat给关掉,儿SpringBoot中内嵌tomcat的,所以不太好手动关掉。

在cmd下查找一下

查看所有端口占用情况:netstat -ano

查看指定端口占用情况:netstat -ano|findstr "8080"(通过这个可以找到Pid)


d5cd970569b7220bf08d7fd6c07779a3.png


查看Pid对应的进程:tasklist|findstr "123"(通过这个可以找到进程名)

d455a1f4ef2167f00ebc81d46944138a.png


杀死进程:taskkill /f /t /im 进程名

156bb806394f579d4390b9897b54d2ec.png

问题五

跳转到应用的目录下时使用mvn clean package报错

因为target目录下本身就是空的所以不用clean直接mvn package即可

然后在targe目录下找到刚才打好的jar包java -jar messagepush1-0.0.1-SNAPSHOT.jar 成功启动SpringBoot

a63fcb6f7e84d744757969cca945ee2b.png

将服务停止后用sftp传输到服务器上




目录
相关文章
|
8天前
|
Java 应用服务中间件 Maven
Maven的三种项目打包方式——pom,jar,war的区别
Maven 提供了多种打包方式,分别适用于不同类型的项目。pom 用于父项目或聚合项目,便于项目的结构和依赖管理;jar 用于Java类库或可执行的Java应用程序;war 则专用于Java Web应用程序的部署。理解这些打包方式的用途和特点,可以帮助开发者更好地配置和管理Maven项目,确保构建和部署过程的顺利进行。无论是单模块项目还是多模块项目,选择合适的打包方式对于项目的成功至关重要。
20 3
|
22天前
|
Java Maven Android开发
【Azure Developer】VS Code打包Java maven Project 遇见 BUILD FAILURE
Unknown lifecycle phase "lean". You must specify a valid lifecycle phase or a goal in the format <plugin-prefix>:<goal> or <plugin-group-id>:<plugin-artifact-id>[:<plugin-version>]:<goal>
|
23天前
|
缓存 IDE Java
idea的maven项目打包时没有source下的文件
【10月更文挑战第21天】idea的maven项目打包时没有source下的文件
36 1
|
1月前
|
Java 测试技术 Maven
maven 打包命令
maven 打包命令
25 6
|
1月前
|
Java Linux Maven
IDEA如何用maven打包(界面和命令两种方式)
【10月更文挑战第14天】本文介绍了两种Maven项目打包方法:命令行与IDEA界面。首先确保已安装Maven并配置环境变量,通过`mvn -v`检查安装。命令行打包需进入项目目录,执行`mvn package`,之后在`target`目录查看结果。IDEA打包则需配置Maven路径,打开Maven Projects窗口,双击Lifecycle下的`package`阶段,同样在`target`目录查找生成文件,并在Build窗口查看日志以排查问题。
670 1
|
1月前
|
Java Shell Maven
Flink-11 Flink Java 3分钟上手 打包Flink 提交任务至服务器执行 JobSubmit Maven打包Ja配置 maven-shade-plugin
Flink-11 Flink Java 3分钟上手 打包Flink 提交任务至服务器执行 JobSubmit Maven打包Ja配置 maven-shade-plugin
103 4
|
1月前
|
Java Maven
用graalvm将maven项目打包成可执行文件
本文介绍了如何使用GraalVM将Maven项目打包成可执行文件,包括引入依赖和插件、编写代码、执行打包命令以及运行查看结果的完整过程。
122 0
用graalvm将maven项目打包成可执行文件
|
1月前
|
Java Maven
maven打包出现没有主类的原因,详细分析并解决
本文分析了使用Maven打包Java应用时找不到或无法加载主类的问题,通常是由于未配置主类或打包时未包含依赖,并通过添加Maven插件解决了依赖问题,同时指出了JavaFX应用可能遇到的运行时组件缺失的错误。
144 0
maven打包出现没有主类的原因,详细分析并解决
|
1月前
|
Java 应用服务中间件 Maven
SpringBoot Maven 项目打包的艺术--主清单属性缺失与NoClassDefFoundError的优雅解决方案
SpringBoot Maven 项目打包的艺术--主清单属性缺失与NoClassDefFoundError的优雅解决方案
317 0
|
3月前
|
Java Maven 容器
Maven使用IDEA自带工具打包,同时将lib下的jar包打入,双击jar包可直接运行
使用IntelliJ IDEA的Artifacts功能,可以将项目依赖的第三方jar包打包进jar文件中,实现双击jar包即可直接运行。
Maven使用IDEA自带工具打包,同时将lib下的jar包打入,双击jar包可直接运行