假设有A,B,C三个模块,A模块没有Main函数,B模块也没有main函数,只需要在Idea右侧点击Maven->A模块名->Lifecycle->complie即可,B模块也一样如此。你也可以不手动操作,也可以直接跑下面提到的脚本程序。

但是C模块是有Main函数的,它又依赖于B模块,B模块又依赖与A模块。
在C模块的pom.xml中,在标签内,也就是最外层标签内,加上如下代码,用来编译

<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
			<plugin>
				<!-- 这是个编译java代码的 -->
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.2</version>
				<configuration>
					<source>1.8</source>
					<target>1.8</target>
					<encoding>UTF-8</encoding>
				</configuration>
				<executions>
					<execution>
						<phase>compile</phase>
						<goals>
							<goal>compile</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>

根据依赖链,C->B->A,先要编译顶端A模块,然后编译B模块,最后编译Main函数入口的C模块。编译完成之后。
在项目根目录创建一个build.bat脚本文件,文件内容如下。

mvn clean install
mvn clean package -Dmaven.test.skip=true  -Pdev

直接跑就可以打包了。
这将会在C模块下的target目录下生成一个jar文件。这个就是可执行的jar文件。
最后执行

jave -jar xxx.jar
                    假设有A,B,C三个模块,A模块没有Main函数,B模块也没有main函数,只需要在Idea右侧点击Maven-&gt;A模块名-&gt;Lifecycle-&gt;complie即可,B模块也一样如此。你也可以不手动操作,也可以直接跑下面提到的脚本程序。但是C模块是有Main函数的,它又依赖于B模块,B模块又依赖与A模块。在C模块的pom.xml中,在标签内,也就是最外层标签内,加上如下代码,用来编译&lt;build&gt;		&lt;plugins&gt;			&lt;plugin&gt;
2. 问题
使用idea打包的时候编译偶尔成功偶尔失败,本地运行能成功,有时能打包成功但是发现使用 jar 包跑的时候会出现类找不到的情况,最终经过排查发现有部分的类打包的时候打包不进去。
3. 解决办法
关闭idea,找到对应项目的目录删除 .idea 文件,让 idea 去重构项目
删除 Maven 本地仓库下当前项目的对应
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.3.2.RELEASE</version>
<!--指定启动类-->
<configuration&...
				
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar
打包install公共模块的时候,打包失败,会出现报错信息。报错:Unable to find main class 原因:在maven编译这个工程模块的时候,尝试去模块下找main方法的class文件,但是我这个是一个公共服务模块,不需要启动项目,索引不需要main方法文件。 解决:在该工程模块的pom.xml中,添加下面的配置进行过滤即可即可。 添加后,再install就成功了: 添加后,再install就成功了,:
Python库是一组预先编写的代码模块,旨在帮助开发者实现特定的编程任务,无需从零开始编写代码。这些库可以包括各种功能,如数学运算、文件操作、数据分析和网络编程等。Python社区提供了大量的第三方库,如NumPy、Pandas和Requests,极大地丰富了Python的应用领域,从数据科学到Web开发。Python库的丰富性是Python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,Matplotlib和Seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。
Maven打包时,内部依赖会被自动打包进最终的jar包或war包中,而且不需要做任何额外的配置。 假设你的项目有两个模块,一个父模块和一个子模块。子模块依赖于父模块。在父模块的pom.xml文件中,你需要声明子模块为一个模块: ```xml <modules> <module>子模块名称</module> </modules> 在子模块的pom.xml文件中,你需要声明父模块为一个父模块: ```xml <parent> <groupId>父模块的groupId</groupId> <artifactId>父模块的artifactId</artifactId> <version>父模块的version</version> </parent> 当你在父模块中执行`mvn package`命令时,Maven会自动编译并打包模块和子模块,将子模块jar包打包进父模块jar包中。这样,在部署父模块时,子模块jar包也会一起被部署。
在linux环境下cmake中配置Qt6报错:but it set Qt6_FOUND to FALSE so package “Qt6“ is considered to be NOT FOUN qq_38377345: 一键解决,感谢! vue使用opencv.js报错Error: Bad size of input mat: the size should be same as the video. Clelele: 为0的原因是因为你是异步加载的,没有等到他初始化后进行调用,这时候视频还没初始化好,你可以写在videoElement.addEventListener("loadedmetadata", () => {})函数里 对第一,二,三,BC范式的理解 CAO_0815: 通俗易懂! 对第一,二,三,BC范式的理解 小泽爱分享: 这就是第三范式!