精华内容
下载资源
问答
  • 一,背景 相信很多小伙伴都遇见过这个错误 ''没有主清单属性''。下面我们通过一个例子来重现这个问题,并且解决这个问题。 看着面这个例子,只有一个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 打包出现这个问题是解决方案参考

    https://blog.csdn.net/echizao1839/article/details/105365663

    再次尝试,问题已经解决。

    展开全文
  • Mavan打包项目报错以及解决办法。

    千次阅读 2015-10-08 16:41:54
    在Doc里打包项目报错,如图。ProjectBuildingException 提示app-wx 不存在。 于是找到Maven的 Pom.xml文件,没错,注释掉它。再打包。SUCCESS!

    在Doc里打包项目报错,如图。ProjectBuildingException


    提示app-wx 不存在。

    于是找到Maven的 Pom.xml文件,没错,注释掉它。再打包。SUCCESS!


    展开全文
  • 关于Maven打包问题 上传上UDF函数 出现找注册函数失败,原因找不到jar包中的.class可运行文件 看了半晌回头发现自己修改过src/main/java工作目录, src/main/scala这个目录地址, 回头将他改回java就可以用了...
    1. 关于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:56
    maven多平台打包1.定义多个平台的profile,例如: <!-- 本地开发环境 --> <id>dev <war.name.tag>dev </p

    maven多平台打包

    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 : 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工具生成可执行jar,遇到的问题的记录。...mavan打包插件使用的是maven-shade-plugin。具体原因我也描述不清。解决办法:在pom.xml 的插件配置中添加以下两行:&lt;transformer imp...
  • 我们可以通过在pom文件中通过配置让其以jar的方式运行,形如:java -jar xxx.jar,我们也可以通过打war包的方式让它在你配置的tomcat容器中运行,下面来具体看看两种方式具体的打包部署方式。   打Jar包运行 1 ...
  • 一、 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
  • 前段时间遇到一个问题,一个mavn工程在eclipse里面能正常打包,在批处理脚本中打包就报错。操作方式是在mavan build…,输入 clean package -Dmaven.test.skip=true参数。 在批出理脚本中使用的是 mvn clean ...
  • java中ssj框架的搭建流程ssj即:Spring SpringMVC JPA首先打开eclipse,并在里面新建一个mavan项目然后开始进行打包,下图为mavan打包方式1.引入pom.xml文件,并在里面添加项目所需要的jar包jar包以项目需要自行...
  • 然后开始进行打包,下图为mavan打包方式 1.引入pom.xml文件,并在里面添加项目所需要的jar包 jar包以项目需要自行添加 2.在web.xml文件中配置Spring的监听和SpringMvc的核心控制器还有编码的过滤器 3.然后我们...
  • 这个问题以前就遇到过,一般是这样,Eclipse和MyEclipse可以成功运行,但是放在IDEA上导入项目后编译运行起来就报上面这个错误。查了一下原因是: IDEA编译打包的时候,xml文件没有被Mavan编译打包到tar...
  • 单体架构的总结

    千次阅读 2019-04-19 11:48:36
    把项目打包时,需要安装...也可以在java的编写软件中来进行编写,如果是StS则可以在mavan中进行打包打包的jar包在target中,你就可以有jar包和本地数据库就可以运行该项目了 进行springbootActuator健康监测是可以...
  • 阅读背景:已知您有 Eclipse基础,是从 Eclipse 向 Intellij Idea 转变的。... Maven5.1 创建 Maven5.11 创建 Java Mavan5.12 创建 Maven Web5.2 打包 Maven5.21 打包 Java Maven5.22 打包 Maven...
  •  并且使用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跟本文...
  • groupId(必须定义):定义Mavan项目隶属的实际项目,如SpringFramework,一个实际项目可包含多个Maven项目 artifactId(必须定义):定义实际项目中的一个Maven项目,如spring-core、spring-context version...
  • Maven入门

    2018-12-10 16:03:06
    1.1 什么是Mavan Maven是Apache下面的一个纯java开发的开源项目,它是一个项目管理工具,它可以对项目进行构建,依赖管理 1.2Maven是如何找到jar包 通过坐标,查找jar包仓库 1.3 什么是项目构建 从编译-测试-测试-...
  • 通常,项目要在多个环境部署,每种...所以,各个环境打包出来的资源是不一样的,如果手动的修改,费时费力。我们可以利用MAVAN的**profiles**命令来自动化构建不同的部署包。在pom.xml中配置profiles <id>dev</id>

空空如也

空空如也

1 2
收藏数 27
精华内容 10
关键字:

mavan打包