使用maven打包添加带有主方法类的信息

一,准备工具

1,请确定在此之前你所有的Java配置以及maven都已经正确配置

二,说明

当我们初次使用maven时,我们在pom.xml所在的目录(也就是项目的根目录)执行 mvn clean package 进行打包项目时,我们在项目输出目录(target)会看到我们指定类型的包,一般来说 maven 默认是 Jar 包,这个时候你 cmd 到该目录,执行 java -jar your-jar-pakage-name.jar,会出现找不到主方法入口的错误:

此时maven告诉我们找不到主方法的类,这是为什么呢?因为maven默认是不会将主方法的类的信息添加到manifest文件

三,解决方案

使用maven的插件来为我们自动将主方法类的信息(即指定Main-Class)写入manifest文件,在你的pom.xml中添加如下:

然后你再打包一次你的项目,直接运行你的jar吧!

时间: 2024-12-09 13:38:28

使用maven打包添加带有主方法类的信息的相关文章

MAVEN 打包时出现多余的类的问题

问题描述:使用 mvn clean install 的时候,会打的包中增加一些源码中没有的class.<IGNORE_JS_OP> mvn1.jpg (56.52 KB, 下载次数: 31) 下载附件  保存到相册 2014-6-27 16:28 上传 像这个jar包多了java.annotation的类. 不知道这些类怎么编译过来的,编译时在classes目录就有这些文件. 解决办法: 在pom文件中加入: <build>                <plugins&g

maven 打包添加依赖包

<build> <plugins> <plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration> <appendAssemblyId>false</appendAssemblyId> <descriptorRefs> <descriptorRef>jar-with-dependencies</desc

maven打包时跳过测试类

记录 修改pom.xml文件 <project> [...] <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.18.1</version> <configuration>

解决maven打包编译出现File encoding has not been set问题

maven打包编译时后台一直输出警告信息 [WARNING] File encoding has not been set, using platform encoding GBK, i.e. build is platform dependent! 找了半天,原来只要在pom.xml文件中增加一个配置项即可 <properties>         <project.build.sourceEncoding>UTF-8</project.build.sourceEncodi

Maven 手动添加第三方依赖包及编译打包和java命令行编译JAVA文件并使用jar命令打包

一,实例:新建了一个Maven项目,在eclipse中通过 build path –> configure path-.将依赖包添加到工程中后,eclipse不报错了.但是用Maven命令 mvn clean compile 时出错如下: 原因是在eclipse中添加了 exteneral jar后,还需要在maven中再添加依赖的jar包 Maven手动添加第三方依赖包有两种方法: 参考:maven 添加第三方依赖              maven中把依赖的JAR包一起打包 第一种方法是使

Java之面向对象概述,类,构造方法,static,主方法,对象

一.面向对象概述 面向过程 "面向过程"(Procedure Oriented)是一种以过程为中心的编程思想.这些都是以什么正在发生为主要目标进行编程,不同于面向对象的是谁在受影响.与面向对象明显的不同就是封装.继承.类. "面向过程"(Procedure Oriented)是一种以过程为中心的编程思想."面向过程"也可称之为"面向记录"编程思想,他们不支持丰富的"面向对象"特性(比如继承.多态),并且它们

面向对象:封装(一):构造函数;类的主方法;权限修饰符;对象的创建

对象:一切皆为对象. 对象包括两部分内容:属性(名词形容词),行为(动词). 对象和对象之间是有关系的. 派生(子类与父类的关系),关联,依赖. 类:对同一类别的众多对象的一种抽象. 类,还是用来生成对象的一种模板,对象是类的一种具体化的表现. 面向对象的三大特性:封装,继承,多态. 一:类的定义: class 类名{ 访问修饰符 成员变量的定义; 访问修饰符 成员函数(方法)的定义; } 例1: public class Student{ public String name; public

idea live template高级知识, 进阶(给方法,类,js方法添加注释)

为了解决用一个命令(宏)给方法,类,js方法添加注释,经过几天的研究.终于得到结果了. 实现的效果如下: 给Java中的method添加方法: /** * * @Method : addMenu * @Description : * @param menu : * @return : cn.yiyizuche.common.base.ResultMsg * @author : Rush.D.Xzj * @CreateDate : 2017-06-12 星期一 18:17:42 * */publi

错误: 在类 com.zs.container.CollectionData 中找不到主方法, 请将主方法定义为: public static void main(String[] args)

错误: 在类 com.zs.container.CollectionData 中找不到主方法, 请将主方法定义为: public static void main(String[] args) package com.zs.container; import java.util.ArrayList; import com.java.array.generator.CountingGenerator.String; import com.java.array.generator.CountingG