精华内容
下载资源
问答
  • Maven-打包运行

    万次阅读 2018-11-20 14:04:22
    接续上文《Maven-编写测试代码》 将项目进行编译、测试之后,...从输出内容可以看出,Maven打包之前进行了编译、测试等操作。 jar任务负责打包,实际上就是jar插件的jar目标将项目主代码打包成一个名为hello-wor...

    接续上文《Maven-编写测试代码

    将项目进行编译、测试之后,接下来就是打包(package),我们的pom.xml中没有指定打包类型,那么使用默认打包类型jar,简单的执行命令mvn clean package进行打包

    从输出内容可以看出,Maven在打包之前进行了编译、测试等操作。

    jar任务负责打包,实际上就是jar插件的jar目标将项目主代码打包成一个名为hello-world-1.0-SNAPSHOT.jar的文件。该文件也位于target/输出目录中

    它是根据artifact-version.jar规则进行命名的。

    至此,我们得到了项目的输出,如果有需要的话,就可以复制这个jar文件到其他项目的Classpath中,从而使用HelloWorld类。

    但是,如何让其他的Maven项目直接饮用这个jar呢,还需要一个安装步骤:mvn clean install

    在打包之后,又执行了install。从输出中可以看到该任务将项目输出的jar安装到了Maven本地仓库中,可以打开相应的文件夹看到HelloWorld项目的pom和jar。

    现在我们已经介绍了Maven最主要的命令:mvn clean compile、mvn clean test、mvn clean package、mvn clean install。

    执行test之前是会先执行compile的,执行package之前是会先执行test的,类似的install之前会先执行package,可以在任何一个Maven项目中执行这些命令。

    默认打包生成的jar是不能够直接运行的,因为带有main方法的类信息不会添加到manifest中(打开jar文件中的META-INF/MANIFEST.MF文件,将无法看到Main-Class一行)

    为了生成可执行的jar文件,需要借助maven-shade-plugin

    <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-shade-plugin</artifactId>
                    <version>1.2.1</version>
                    <executions>
                        <execution>
                            <phase>package</phase>
                            <goals>
                                <goal>shade</goal>
                            </goals>
                            <configuration>
                                <transformers>
                                    <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                                        <mainClass>com.juvenxu.mvnbook.helloworld.HelloWorld</mainClass>
                                    </transformer>
                                </transformers>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>

    这里配置了mainClass为com.juvenxu.mvnbook.helloworld.HelloWorld,项目打包时会将该信息放到MANIFEST中,再次执行mvn clean install,构建完之后打开target/目录,可以看到hello-world-0.0.1-SNAPSHOT.jar和original-hello-world-0.0.1-SNAPSHOT.jar,前者是带有Main-Class信息的可运行jar,后者是原始的jar

    打开hello-world-0.0.1-SNAPSHOT.jar的META-INF/MANIFEST.MF,可以看到包含这样一样信息:

    Main-Class: com.juvenxu.mvnbook.helloworld.HelloWorld

    现在在项目根目录中执行该jar文件

    # java -jar target\hello-world-0.0.1-SNAPSHOT.jar

    控制台输出了Hello Maven

    展开全文
  • MAVEN打可运行jar包

    2019-04-15 01:14:10
    NULL 博文链接:https://gghaomm.iteye.com/blog/1754767
  • Maven打包程序运行中文乱码

    千次阅读 2019-09-06 10:44:55
    原因:中文操作系统编码为GBK,MAVEN安装后默认使用系统编码GBK,导致在编译UTF-8格式的源代码文件时出现编码不匹配的问题。 设置前: 解决办法:新增MAVEN环境变量 Key: MAVEN_OPTS Value:-Xms256m -Xmx512m ...

    原因:中文操作系统编码为GBK,MAVEN安装后默认使用系统编码GBK,导致在编译UTF-8格式的源代码文件时出现编码不匹配的问题。

    设置前:

    解决办法:新增MAVEN环境变量

    Key: MAVEN_OPTS

    Value: -Xms256m -Xmx512m -Dfile.encoding=UTF-8

    设置后:

     

    展开全文
  • maven 过滤文件夹打包

    2016-09-24 16:02:38
    工程运行环境有研发,测试和生产,不同的运行环境配置不同,maven 打包时指定文件目录,使用指定的文件夹下的配置文件。
  • 新建maven项目,选择maven-archetype-quickstart,编写完进入项目根目录,使用mvn package命令打包,进入target目录,使用java -jar xx.jar命令运行文件,报错:“没有主清单属性”。 查阅资料,根据这篇博文的提示...

    新建maven项目,选择maven-archetype-quickstart,编写完进入项目根目录,使用mvn package命令打包,进入target目录,使用java -jar xx.jar命令运行文件,报错:“没有主清单属性”。
    查阅资料,根据这篇博文的提示,在pom.xml文件中添加配置项:

    <build>
      <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-shade-plugin</artifactId>
            <version>1.2.1</version>
            <executions>
                <execution>
                    <phase>package</phase>
                    <goals>
                            <goal>shade</goal>
                    </goals>
                        <configuration>
                            <transformers>
                                <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                                    <mainClass>xx.xx.App</mainClass>
                                </transformer>
                            </transformers>
                        </configuration>
                </execution>
            </executions>
         </plugin>
      </plugins>
    </build>
    

    重新打包运行,无效。
    继续,根据这篇博文的提示,修改配置如下:

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        <version>3.0.2</version>
        <configuration>
            <archive>
                <manifest>
                    <addClasspath>true</addClasspath>
                    <mainClass>xx.xx.Application</mainClass> <!-- 此处为主入口-->
                </manifest>
            </archive>
        </configuration>
    </plugin>
    

    重新打包运行,出现ClassNotFoundException。
    返回程序观察,应该是打包时丢失依赖,根据博文的提示,使用maven-jar-plugin和maven-dependency-plugin插件打包:

    <build>  
        <plugins>  
      
            <plugin>  
                <groupId>org.apache.maven.plugins</groupId>  
                <artifactId>maven-jar-plugin</artifactId>  
                <version>2.6</version>  
                <configuration>  
                    <archive>  
                        <manifest>  
                            <addClasspath>true</addClasspath>  
                            <classpathPrefix>lib/</classpathPrefix>  
                            <mainClass>xx.xx.SpringStart</mainClass>  
                        </manifest>  
                    </archive>  
                </configuration>  
            </plugin>  
            <plugin>  
                <groupId>org.apache.maven.plugins</groupId>  
                <artifactId>maven-dependency-plugin</artifactId>  
                <version>2.10</version>  
                <executions>  
                    <execution>  
                        <id>copy-dependencies</id>  
                        <phase>package</phase>  
                        <goals>  
                            <goal>copy-dependencies</goal>  
                        </goals>  
                        <configuration>  
                            <outputDirectory>${project.build.directory}/lib</outputDirectory>  
                        </configuration>  
                    </execution>  
                </executions>  
            </plugin>  
      
        </plugins>  
    </build>  
    

    重新打包运行,成功。

    展开全文
  • 自己整理的maven打包出现错误的解决办法、含有截图等 附带maven搭建私服等资料
  • maven编译打包时 跳过运行test

    千次阅读 2019-05-08 20:42:43
    IDEA maven编译打包时 跳过运行test

    IDEA maven编译打包时 跳过运行test

    点击maven skip 按钮

    展开全文
  • Maven打包并生成运行脚本

    千次阅读 2018-07-25 16:23:24
    1、 Parent Project pom.xml &amp;amp;...maven-jar-plugin.version&amp;amp;amp;gt;2.4&amp;amp;amp;lt;/maven-jar-plugin.version&amp;amp;amp;gt; &amp;amp;amp;lt;m
  • IDEA中Maven项目打包方式

    千次阅读 2021-01-19 14:32:09
    在其他应用中运行时,必须保证其上面有相应的依赖包,才能运行maven——》Lifecyle——》Clean——》Package 打包成功后就会出现target文件夹 方式二: 打包两个jar包: 一个是架包(只包含程序包即方式一...
  • maven 打包运行jar包

    万次阅读 2018-02-05 11:13:17
    Maven可以使用mvn package指令对项目进行打包,如果使用Java -jar xxx.jar执行运行jar文件,会出现"no main manifest attribute, in xxx.jar"(没有设置Main-Class)、ClassNotFoundException(找不到...
  • Maven 打包 设置运行主类

    千次阅读 2018-05-10 21:26:23
    Maven 运行 mvn clean package 命令打包在target目录下生成jar包,如何没有配置指定主类,运行jar会报错,如下lin@lin-laptop:~/测试项目/mvnstudy1/mvnstudy1$ java target/mvnstudy1-1.0-SNAPSHOT.jar 错误: 找不...
  • 原因:不应该直接export jar包,而应该用maven即右键后run as-&gt;maven build,生成的jar包是在target下面 注意:用maven打包需要在pom中配置maven插件的依赖
  • Maven打包测试类运行问题解决

    千次阅读 2018-11-05 12:18:06
    Maven打包时,控制台输出测试类的运行结果。 每次打包都得运行一遍,非常耗费时间。可以预见的是测试方法越多,耗费时间越多。所以这里有必要屏蔽一下测试类。 在项目的pom.xml的properties标签里加入 &...
  • maven打包dubbo服务接口(maven-assembly-plugin)
  • 主要介绍了Maven 项目生成jar运行时提示“没有主清单属性”,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • idea非maven工程打包,tomcat运行

    千次阅读 2019-07-18 16:38:47
    转 [tomcat]idea非maven工程打包,tomcat运行 ...
  • SpringBoot - Maven方式打包

    千次阅读 2020-06-22 15:18:41
    SpringBoot 为当前最流行的JAVA框架 , 内嵌了 Tomcat 服务器 , 我们不用再像以前 Spring 那样打包成 war , 然后将 war 扔到 tomcat 中运行 ...使用 Maven打包 jar (主流) 使用各种开发工具打包Jar . 如 : idea , eclip.
  • maven打包时打包指定的lib文件夹

    千次阅读 2019-10-31 19:15:29
    今天在打包自己的spring boot项目时遇到了问题, 报找不到类和符号。 因为我有些依赖是放在项目lib文件夹中,那么打包的时候要连把它一起打包。 修改pom.xml, 添加一下内容: <build> <plugins>...
  • Maven 如何打包运行jar包

    千次阅读 2017-08-15 16:50:46
    maven 打包可执行jar maven-jar-plugin maven-shade-plugin maven-assembly-plugin 总结目标解决可执行jar包的打包问题;上一篇文章我们介绍了mvn package可以打包,那么如果是一个可执行的jar包,该如何打包呢?...
  • 一、maven打包 1、右键项目-》属性-》MAVEN 2、 如果是jre换成jdk 3、 右键项目-》build path 指定到上图中的jdk路径 4、pom.xml指定打包为jar 5、maven打包插件pom配置 <build> &...
  • maven 打包运行jar包(转)

    万次阅读 多人点赞 2018-08-08 13:53:56
    2、方法一:使用maven-jar-plugin和maven-dependency-plugin插件打包 3、方法二:使用maven-assembly-plugin插件打包 4、方法三:使用maven-shade-plugin插件打包 ——————————————...
  • 第一种 idea自身打包插件 这种方式输出目录在out目录下 第一步 如图所示 依次选择file-projecct structure-artifacts 选择 Artifacts 然后点击+ 选择jar 选择 from module with dependencies 第二步 红框部分可以...
  • maven 打包 jar包运行出错

    千次阅读 2017-12-06 14:06:23
    问题: (reason: Uncaught exception: java.lang.SecurityException: Invalid signature file digest for Manifest ...这是打包中的问题 解决办法: zip -d yourjar.jar 'META-INF/.SF' 'META-INF/.RSA' 'META-INF/*SF'
  • idea中用maven打包运行test测试方法

    千次阅读 2020-05-22 16:34:24
    在idea 中进行maven打包运行test测试用例, 解决办法有以下三种 1、在pom 里面增加插件跳过测试的插件, <plugin> <artifactId>maven-surefire-plugin</artifactId> <configuration>...
  • 打包成功后,jar包会生成在target文件夹下,名称和项目名类似: 还是进入到项目根目录countjpg文件夹下: $ cd 项目存放路径/countjpgs 使用spark-submit命令运行程序: $ spark-submit --class ...
  • maven项目打包部署

    万次阅读 2019-06-02 21:47:55
    maven项目打包 1.pom文件配置将项目打包成jar包 2.打包时跳过测试,执行指令:mvn install -DskipTests 3.运行项目:java -jar guns.jar
  • Spring Boot + Vue前后端分离项目,Maven自动打包整合

    千次阅读 多人点赞 2019-09-30 11:26:11
    一般的做法是前端项目打包完,将打包文件手动复制到后端项目工程的src\main\resources\static目录下,再进行后端工程项目打包,这样手动来回复制、多次打包总是让人觉得麻烦。(即使采用Jenkins打包部署,也会存在...
  • http://dblab.xmu.edu.cn/blog/2083-2/
  • 本地调试看到依赖里有,开发环境部署运行也正常,测试环境上就是一直报错 这种错就是得把测试上打好的包,拉下来,反编译一下看看有没有那个东西,结果发现没有 原因是测试环境打包的时候私库估计没设置对,拉错...
  • springboot+maven maven打包配置

    千次阅读 2018-09-07 11:18:17
    下面是整理的springboot通用maven打包配置 &lt;build&gt; &lt;plugins&gt; &lt;plugin&gt; &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt; &lt;...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 150,829
精华内容 60,331
关键字:

maven已经打包如何运行