maven install的时候报Unable to find main class

news2024/11/24 3:13:07

目录

    • 问题描述
    • 解决办法
      • 解决方案一:添加一个主函数
      • 解决方案二:将不是web工程的设置跳过
      • 解决方案三:打包插件的作用本质上就是将当前项目所依赖的jar打包到一块,这样jar包就可以运行了,我们完全可以把parent的pom.xml的build打包插件给去掉,哪里需要打包就在哪个子项目的pom.xml上添加。

问题描述

common包由于不是web项目所以我寻思不用放main主函数方法。然后删除掉之后就打包异常了。

正常我们打出来的jar包可以通过java-jar来运行jar包的,运行jar包的时候实际上就是去访问程序当中的主函数方法,所以不管是不是web工程,都不可以没有主函数。

打包的时候我是对父工程进行的clean和install。项目使用了聚合工程,所以对父工程打包就相当于执行整个项目的。

解决办法

需要注意的:父工程<packaging>pom</packaging>一定要设置为pom

解决方案一:添加一个主函数

虽然他不是web工程,但是我们依旧可以在包下新建一个类,然后创建一个主函数方法。这样可以避免打包异常。

假如项目当中存在多个主函数,那他还会打包成功吗?我们来做一下试验:

事实证明他会不知道使用哪个主函数而报异常

解决方法:

解决方案二:将不是web工程的设置跳过

<build>
	<plugins>
		<plugin>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-maven-plugin</artifactId>
               <configuration>
                <skip>true</skip>
            </configuration>
		</plugin>
	</plugins>
</build>

解决方案三:打包插件的作用本质上就是将当前项目所依赖的jar打包到一块,这样jar包就可以运行了,我们完全可以把parent的pom.xml的build打包插件给去掉,哪里需要打包就在哪个子项目的pom.xml上添加。

可能会有人对这有疑问,web项目引用了common工程,那common工程都没有打包插件,web工程会受影响吗,答案是不会的,关于这一点我已经验证过了。如下将web工程的jar包解压后,会发现尽管common没有主函数,他依然将common打成了jar包,封装到了自己jar包下,而且项目还可以正常运行。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/488998.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

智慧农业物联网平台建设方案

本资料来源公开网络&#xff0c;仅供个人学习&#xff0c;请勿商用&#xff0c;如有侵权请联系删除。 智慧农业物联网系统组网图 2.2.1 智能温室组网说明 该组网图演示的为小面积示范区&#xff0c;每个连栋温室为 1个灌溉区域&#xff0c;1个子系统&#xff0c;该子系统完成…

学习Typescript(第一弹)

Typescript的基础类型 Boolean类型 let bool: boolean true;Number类型 let num: number 222;String类型 let str: string 码上coding;数组Array类型 对数组类型的定义有两种方式: let arr1: number[] [1,2,3]; let arr2: Array<number | string> [1,2,码上co…

Android APK 反编译后重新打包并签名

APKTool&#xff1a; Apktool 是一个逆向android非常有用的工具&#xff0c;可以用来反编译apk文件&#xff0c;并且能在修改部分资源文件后&#xff0c;重新打包成一个新的apk。 下载连接&#xff1a;http://ibotpeaches.github.io/Apktool/install/ 下载之后文件夹非常清爽&…

电力节能设备远程监控系统解决方案

电力节能设备远程监控系统解决方案 一、项目背景 随着城市化进程的发展&#xff0c;对电力设备安全、可靠、经济运行的要求越来越高&#xff0c;由于没有统一专业的用电现代化管理规划&#xff0c;电力设备管理混乱、数据采集不方便、运行智能化程度低&#xff0c;需要实时掌…

复合查询--- MySQL总结(三)

复合查询 文章目录 复合查询多表查询自连接子查询单行查询多行查询多列子查询合并查询 多表查询 前面讲述的关于进行一个表的简单查询和关于时间函数的相关问题&#xff0c;下面要进行复合查询的相关内容。 这里要使用卡笛尔集的概率让两个表融合成为一个表。 需要使用相应的字…

vue项目为例解决element ui 时间选择器 picker使用样式穿透不起作用问题

今天在开发中 需要修改时间选择器弹出的这个组件的样式 但这个东西比较坑爹 首先 不能影响其他组件 就是其他组件用了时间选择器 不能受到我们写的样式的影响 那么 就只好穿透了 但你会发现 这东西是作用与body下的 就很坑 穿透我试了挺久的 不起作用 但官方文档有提供给我们一…

centos7 配置 sftp 服务器并通过 java 上传文件

虚拟机配置 1、创建sftp用户组 groupadd sftp2、添加用户 useradd -g sftp mysftp3、设置用户密码 passwd mysftp4、创建文件根目录 mkdir /app/data5、将该目录设置到用户上 usermod -d /app/data mysftp6、修改配置文件 vim /etc/ssh/sshd_config7、找到 Subsystem &am…

算法记录 | Day50 动态规划

123.买卖股票的最佳时机III 思路&#xff1a; 1.确定dp数组以及下标的含义 最多可完成两笔交易意味着总共有三种情况&#xff1a;买卖一次&#xff0c;买卖两次&#xff0c;不买卖。 具体到每一天结束总共有 5 种状态&#xff1a; 未进行买卖状态&#xff1b;第一次买入状…

手动封装一个日期处理工具类,几乎覆盖了所有的时间操作(收藏)

工具类包含以下方法&#xff1a; - stringToDate: 将字符串转换为java.util.Date类型- dateToString: 将java.util.Date类型转换为字符串- stringToLocalDateTime: 将字符串转换为LocalDateTime类型- localDateTimeToString: 将LocalDateTime类型转换为字符串- dateToLocalDat…

01-Java 核心基础

Java核心基础 Java 开发基础知识Java 语言概述安装 Java 开发环境 开发体验Hello World 程序Java 注释 Java 开发基础知识 Java 语言概述 Java 是 SUN&#xff08;斯坦福大学网络公司&#xff09;1995 年推出的一门高级编程语言&#xff0c;它是一种面向 Internet 的编程语言&…

医院检验信息管理系统源码(云LIS系统源码)JQuery、EasyUI

云LIS系统是一种医疗实验室信息管理系统&#xff0c;提供全面的实验室信息管理解决方案。它的主要功能包括样本管理、检测流程管理、报告管理、质量控制、数据分析和仪器管理等。 云LIS源码技术说明&#xff1a; 技术架构&#xff1a;Asp.NET CORE 3.1 MVC SQLserver Redis等…

【虹科案例】使用 TCP 分析测量握手时间

如何使用 Allegro Network 万用表的 TCP 分析确定握手时间 握手需要多少时间&#xff1f; 在图 1 中&#xff0c;您可以在虹科Allegro 网络万用表的 TCP 统计数据中看到过去 10 分钟的客户端握手次数。在这里&#xff0c;您可以清楚地看到在指定时间段内有延长的响应时间。但…

计算机专业基础知识

大纲分单元讲解计算机的发展、类型及其应用领域计算机技术的发展计算机应用领域 计算机中数据的表示、存储和处理计算机软、硬件系统的组成及主要技术指标计算机软、硬件系统的组成硬件系统软件系统系统软件应用软件 计算机的结构计算机主要性能指标 自我测试 大纲 计算机的发…

Window 10 环境下用 OpenVINO 2022.3部署yolov5 7.0

Window 10 环境下用 OpenVINO 2022.3部署yolov5_7.0 1 下载并解压 OpenVINO Runtime OpenVINO™ Runtime 2022.3 以压缩包 (OpenVINO Archives) 的形式提供。 下载地址&#xff1a; storage.openvinotoolkit.org 下载后解压到 C:\Intel\openvino_2022.3.0 配置环境&#xff…

【STL模版库】STL入门 {模版初阶:泛型编程,函数模版,类模版;STL简介:什么是STL,STL六大组件}

一、模版初阶 1. 泛型编程 如何实现一个通用的交换函数呢&#xff1f; void Swap(int& left, int& right) { int temp left; left right; right temp; } void Swap(double& left, double& right) { double temp left; left right; right temp; } void…

【Python习题集5】函数的设计

函数的设计 一、实验内容二、实验总结 一、实验内容 1.编写两个函数分别按单利和复利计算利息&#xff0c;根据本金、年利率、存款年限得到本息和和利息。调用这两个函数计算1000元在银行存3年&#xff0c;在年利率是6%的情况下&#xff0c;单利和复利分别获得的本息和和利息。…

【Java虚拟机】JVM垃圾回收器详解

1.什么是垃圾收集器 垃圾回收算法是内存回收的方法论&#xff0c;垃圾收集器则是内存回收的具体实现 目前Java规范中并没有对垃圾收集器的实现有任何规范 不同的厂商、不同的版本的虚拟机提供的垃圾收集器是不同的&#xff0c;主要讨论的是HotSpot虚拟机 不存在最厉害的垃圾…

【Java】内部类Object类

目录 1.内部类 1.1实例内部类 1.2静态内部类 1.3局部内部类 1.4匿名内部类 2.Object类 2.1getClass方法 2.2equals方法 2.3hashcode方法 1.内部类 定义&#xff1a;一个类定义在另一个类或一个方法的内部&#xff0c;前者称为内部类&#xff0c;后者称为外部类。 分…

JWT渗透与防御

JWT渗透与防御 什么是JWTJWT漏洞介绍工具使用 身份认证(Authentication)又称鉴权&#xff0c;是指通过一定的手段&#xff0c;完成对用户身份的确认。认证的方式&#xff1a;sessioncookie、JWT、Token session认证的局限性 session认证机制需要配合cookie才能实现。由于cookie…

238页9万字大数据治理与服务平台建设及数据服务实施方案(word)

本资料来源公开网络&#xff0c;仅供个人学习&#xff0c;请勿商用&#xff0c;如有侵权请联系删除。 1 项目解决方案 1.1 建设类业务技术方案 1.1.1 业务需求分析 根据对招标要求的理解&#xff0c;建设业务需求主要包括如下几个方面&#xff1a; &#xff08;1&#xff…