-
mavan 打包时候指定入口文件
2019-09-26 09:38:09一,背景 相信很多小伙伴都遇见过这个错误 ''没有主清单属性''。下面我们通过一个例子来重现这个问题,并且解决这个问题。 看着面这个例子,只有一个main入口 PassWordWin,里面是一个gui程序。...一,背景
相信很多小伙伴都遇见过这个错误 ''没有主清单属性''。下面我们通过一个例子来重现这个问题,并且解决这个问题。
看着面这个例子,只有一个main入口 PassWordWin,里面是一个gui程序。
pom 文件
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.zgxinlei</groupId> <artifactId>java-tool</artifactId> <version>1.0.0-SNAPSHOT</version> <packaging>jar</packaging> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> </properties> </project>
用maven默认的命令打包
打包完成,并重命名为fail
尝试启动和我们预料的一样。
二,传统解决方案(有点low)
解压jar包,进入META-INF目录
看到如下,打开MANIFEST.MF,jar启动额时候回来这个文件夹内找Main-Class属性,但是这里没有。
我们给他加上,并且光标要移动到下一行才会生效。
再次启动,已经正常了。
三,最终解决方案
我们通过上面已经明白了问题出现的根源,那么能不能从打包的时候开始就杜绝这个问题呢?
答案是肯定的。
添加打包插件,指定入口类
方案1,maven-jar-plugin插件
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <classesDirectory>target/classes/</classesDirectory> <archive> <manifest> <mainClass>com.zgxinlei.tool.PassWordWin</mainClass> <useUniqueVersions>false</useUniqueVersions> <addClasspath>true</addClasspath> <classpathPrefix>lib/</classpathPrefix> </manifest> <manifestEntries> <Class-Path>.</Class-Path> </manifestEntries> </archive> </configuration> </plugin>
解决方案2,maven-shade-plugin插件
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>1.4</version> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> </execution> </executions> <configuration> <filters> <filter> <artifact>*:*</artifact> <excludes> <exclude>META-INF/*.SF</exclude> <exclude>META-INF/*.DSA</exclude> <exclude>META-INF/*.RSA</exclude> </excludes> </filter> </filters> <shadedArtifactAttached>true</shadedArtifactAttached> <shadedClassifierName>shaded</shadedClassifierName> </configuration> </plugin>
当然还有其他插件这里只演示这两种。
spring boot 打包出现这个问题是解决方案参考
再次尝试,问题已经解决。
-
Mavan打包项目报错以及解决办法。
2015-10-08 16:41:54在Doc里打包项目报错,如图。ProjectBuildingException 提示app-wx 不存在。 于是找到Maven的 Pom.xml文件,没错,注释掉它。再打包。SUCCESS!在Doc里打包项目报错,如图。ProjectBuildingException
提示app-wx 不存在。
于是找到Maven的 Pom.xml文件,没错,注释掉它。再打包。SUCCESS!
-
Idea中Mavan打包无错误,打jar包传上Hive中运行报错 找不到class文件
2019-03-01 14:40:19关于Maven打包问题 上传上UDF函数 出现找注册函数失败,原因找不到jar包中的.class可运行文件 看了半晌回头发现自己修改过src/main/java工作目录, src/main/scala这个目录地址, 回头将他改回java就可以用了...-
关于Maven打包问题
- 上传上UDF函数 出现找注册函数失败,原因找不到jar包中的.class可运行文件
看了半晌回头发现自己修改过 src/main/java工作目录,
src/main/scala这个目录地址,
回头将他改回java就可以用了,
如果需要就在 pom.xml文件中的<build></build>标签中加上读取地址即可:
<resources> <resource> <directory>src.main.scala</directory> <excludes> <exclude>**/*</exclude> </excludes> <filtering>true</filtering> </resource> </resources>
加上他会找到的,希望能帮大家 :)
-
-
mavan多平台打包
2017-09-04 09:39:56maven多平台打包1.定义多个平台的profile,例如: <!-- 本地开发环境 --> <id>dev <war.name.tag>dev </pmaven多平台打包
1.定义多个平台的profile,例如:
<profiles> <profile> <!-- 本地开发环境 --> <id>dev</id> <properties> <war.name.tag>dev</war.name.tag> </properties> <build> <resources> <resource> <directory>src/main/resources/Configration/dev</directory> </resource> </resources> </build> <activation> <activeByDefault>true</activeByDefault> </activation> </profile> <profile> <!-- 测试环境 --> <id>test</id> <properties> <war.name.tag>test</war.name.tag> </properties> <build> <resources> <resource> <directory>src/main/resources/Configration/test</directory> </resource> </resources> </build> </profile> <profile> <!-- 生产环境 --> <id>prod</id> <properties> <war.name.tag>prod</war.name.tag> </properties> <build> <resources> <resource> <directory>src/main/resources/Configration/prod</directory> </resource> </resources> </build> </profile> </profiles>
2.把不同平台的配置变量不一样的放置在Configration目录下面的对应目录中如:
3.在build的标签放置resources标签,加入resource处理:
<resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> <excludes> <exclude>**/Configration/**</exclude> </excludes> </resource> </resources>
4.在idea的右边maven视图中,选择不同的平台打包:
5.在idea的右边maven视图中,打开Lifecycle节点双击package进行打包:
6.为了区分打包结完成后的不同平台,可以不同平台的包用不同的名,在build节点中加入一个finalName:
<finalName>${name}-${war.name.tag}-${version}</finalName>
-
ubuntu 18.04 安装mavan
2018-06-16 10:09:13最近新安装ubunut 18.04,mavan安装好后,打包一个项目,但是,老师提示失败我以为是java 9 的问题,因为之歌版本的jdk导致许多软件都出现问题,所以我重新安装1.8,但还是有问题于是,于是确定问题出现在mavan 版本... -
(办公)MojoExecutionException
2018-11-08 14:15:00MojoExecutionException : mavan打包错误. 通过以下命令解决:mvn clean install (新改的内容生效) 转载于:https://www.cnblogs.com/historylyt/p/9928773.html -
将web项目部署到linux下的Tomcat中
2018-08-31 16:19:11准备工作: Linunx中的Tomcant解压完成(解压... 使用mavan打包web项目 将war放到Tomcat下面webapp目录 启动Tomcat 在windows下浏览器输入网址的地址即可访问 注:web项目一定要能链接上数据库,同时地... -
MyEclipse 下Maven 项目打包的异常问题(1)
2018-05-25 10:25:27在MyEclipse 下用Maven工具生成可执行jar,遇到的问题的记录。...mavan的打包插件使用的是maven-shade-plugin。具体原因我也描述不清。解决办法:在pom.xml 的插件配置中添加以下两行:<transformer imp... -
Springboot通过Jar与War的打包与部署
2019-02-12 15:54:28我们可以通过在pom文件中通过配置让其以jar的方式运行,形如:java -jar xxx.jar,我们也可以通过打war包的方式让它在你配置的tomcat容器中运行,下面来具体看看两种方式具体的打包部署方式。 打Jar包运行 1 ... -
MapReduce去重复数据打包服务器运行随堂笔记202111
2021-01-01 16:07:36一、 MapReduce去重复数据 案例:创建一个文件 1.txt A 1 a 2 b 23 a 2 c 34 输出结果: A 1 a 2 ...将1.txt(本地文件)上传到hdfs文件系统中【hafs dfs –put 】 ...Mavan 本地仓库 Jar包 四、 代码 import org -
Java编程基础:未配置JAVA_HOME环境变量使用mvn命令打包报找不到编译器的问题
2018-06-29 13:53:20前段时间遇到一个问题,一个mavn工程在eclipse里面能正常打包,在批处理脚本中打包就报错。操作方式是在mavan build…,输入 clean package -Dmaven.test.skip=true参数。 在批出理脚本中使用的是 mvn clean ... -
java ssj_java中ssj框架的项目搭建
2021-02-28 09:21:26java中ssj框架的搭建流程ssj即:Spring SpringMVC JPA首先打开eclipse,并在里面新建一个mavan项目然后开始进行打包,下图为mavan的打包方式1.引入pom.xml文件,并在里面添加项目所需要的jar包jar包以项目需要自行... -
java中ssj框架的项目搭建
2020-05-23 12:18:01然后开始进行打包,下图为mavan的打包方式 1.引入pom.xml文件,并在里面添加项目所需要的jar包 jar包以项目需要自行添加 2.在web.xml文件中配置Spring的监听和SpringMvc的核心控制器还有编码的过滤器 3.然后我们... -
IDEA报错Could not resolve resource location pattern classpath:com/xxxxx/mapper/*.xml]解决办法
2020-02-22 13:45:15这个问题以前就遇到过,一般是这样,Eclipse和MyEclipse可以成功运行,但是放在IDEA上导入项目后编译运行起来就报上面这个错误。查了一下原因是: IDEA编译打包的时候,xml文件没有被Mavan编译打包到tar... -
单体架构的总结
2019-04-19 11:48:36把项目打包时,需要安装...也可以在java的编写软件中来进行编写,如果是StS则可以在mavan中进行打包,打包的jar包在target中,你就可以有jar包和本地数据库就可以运行该项目了 进行springbootActuator健康监测是可以... -
学习笔记:Intellij Idea 使用
2020-04-12 20:11:15阅读背景:已知您有 Eclipse基础,是从 Eclipse 向 Intellij Idea 转变的。... Maven5.1 创建 Maven5.11 创建 Java Mavan5.12 创建 Maven Web5.2 打包 Maven5.21 打包 Java Maven5.22 打包 Maven... -
Docker下的web开发和Tomcat部署
2018-04-22 22:23:06并且使用Mavan的自动部署到Docker 完成简单的自动化部署,完成后实现镜像文件打包到hub.docker.com; 第一步:安装tomcat8 镜像;查询一下tomcat8镜像文件:docker search tomcat8docker pull tomcat:8.0.51来快速... -
使用maven deploy将项目热部署到tomcat
2017-02-26 13:17:27开发过程中,maven项目可以先打包, 再把包放到tomcat发布目录下, 在重启tomcat. 本文实现如何mvn -deploy到tomcat发布目录, 并且无需重启tomcat, 实现热部署.(本文在eclipse中新建maven项目, 用不用eclipse跟本文... -
《Maven实战》第5章 坐标和依赖
2021-03-04 14:52:08groupId(必须定义):定义Mavan项目隶属的实际项目,如SpringFramework,一个实际项目可包含多个Maven项目 artifactId(必须定义):定义实际项目中的一个Maven项目,如spring-core、spring-context version... -
Maven入门
2018-12-10 16:03:061.1 什么是Mavan Maven是Apache下面的一个纯java开发的开源项目,它是一个项目管理工具,它可以对项目进行构建,依赖管理 1.2Maven是如何找到jar包 通过坐标,查找jar包仓库 1.3 什么是项目构建 从编译-测试-测试-... -
MAVEN利用Profile构建不同环境的部署包
2016-06-02 15:20:27通常,项目要在多个环境部署,每种...所以,各个环境打包出来的资源是不一样的,如果手动的修改,费时费力。我们可以利用MAVAN的**profiles**命令来自动化构建不同的部署包。在pom.xml中配置profiles <id>dev</id>
收藏数
27
精华内容
10