MAVEN打包JAR启动执行manifest

当您使用Maven进行项目打包,特别是需要创建一个可执行的JAR文件时,确保JAR文件的MANIFEST.MF中包含正确的Main-Class属性是非常重要的。这个属性告诉Java运行时环境哪个类包含main方法,作为应用程序的入口点。

如果您发现生成的JAR文件不包含Main-Class属性,您可以在maven-assembly-plugin插件的配置中指定它。以下是如何在Maven的pom.xml文件中配置maven-assembly-plugin以包含Main-Class属性的示例:

XML 复制代码
<plugin>
    <artifactId>maven-assembly-plugin </artifactId>
    <configuration>
        <descriptorRefs>
            <!-- 此处填写打包后jar包后添加的标识 -->
            <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
        <archive>
            <manifest>
                <!-- 此处填写程序的主入口(main方法) -->
                <mainClass>com.example.demo.Main</mainClass>
            </manifest>
        </archive>
    </configuration>
    <executions>
        <execution>
            <id>make-assembly</id>
            <phase>package</phase>
            <goals>
                <goal>single</goal>
            </goals>
        </execution>
    </executions>
</plugin>
相关推荐
袁袁袁袁满1 分钟前
Python使用uuid生成唯一密钥uid详细教程
开发语言·python·uuid·唯一密钥uid
Logan Lie1 分钟前
Go 反射(Reflection)详解:从入门到实践
开发语言·后端·golang
爱装代码的小瓶子3 分钟前
【c++进阶】c++11下类的新变化以及Lambda函数和封装器
java·开发语言·c++
乌萨奇也要立志学C++5 分钟前
【Linux】线程同步 条件变量精讲 + 生产者消费者模型完整实现
java·linux·运维
澄澈青空~5 分钟前
病毒木马侵入系统内核的底层运作机理
java·linux·服务器
m0_748250038 分钟前
C++ 标准库概述
开发语言·c++
FAFU_kyp9 分钟前
Rust 所有权(Ownership)学习
开发语言·学习·rust
superman超哥15 分钟前
Rust 异步性能的黑盒与透视:Tokio 监控与调优实战
开发语言·后端·rust·编程语言·rust异步性能·rust黑盒与透视·tokio监控与调优
lkbhua莱克瓦2419 分钟前
进阶-存储对象2-存储过程上
java·开发语言·数据库·sql·mysql
杨杨杨大侠23 分钟前
深入理解 LLVM:从编译器原理到 JIT 实战
java·jvm·编译器