zoukankan      html  css  js  c++  java
  • Maven快速搭建GUI项目

    一、eclipse安装好maven插件,并将maven集成到eclipse之后,用maven的archetype,搭建好一个maven-archetype-queckstart项目的骨架。

    二、可执行jar文件分为两种,一种是可通过命令行java -jar xxx.jar 可以直接运行的jar文件,一种是工其他jar文件调用的jar文件。第一种jar文件的META-INF文件夹下的manifest.MF文件含有Main-Class值,第二种jar文件则不包含。第一种的jar文件可以直接运行的原因是,其可以直接调用到其所依赖依赖的jar包,第一种方式是直接在manifest.MF文件中配上Class-Path的值,第二种方式可以将所依赖的jar文件一起打包进该jar包,可以通过maven插件,下面提供两种插件方式。

    第一种:
    <build>
          <plugins>
          <plugin>  
            <groupId>org.apache.maven.plugins</groupId>  
            <artifactId>maven-jar-plugin</artifactId>  
            <version>2.4</version>  
            <configuration>  
                <archive>  
                    <manifest>  
                        <addClasspath>true</addClasspath>  
                        <classpathPrefix>lib/</classpathPrefix>  
                        <mainClass>com.sinoi.APP</mainClass> 
                    </manifest>  
                </archive>  
            </configuration>  
          </plugin>
         </plugins> 
      </build>
    运行mvn clean package即可

    批注:
    经过我本人自测之后发现,这种方式虽然可以打包,但是不会将依赖包也添加进去。可以手动将依赖包配到<classpathPrefix>元素的路径下,然后命令行运行。

    第二种:
    <plugin> 
        <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-assembly-plugin</artifactId>           
       <version>2.3</version> 
        <configuration> 
          <appendAssemblyId>false</appendAssemblyId>       
          <descriptorRefs> 
               <descriptorRef>jar-with-dependencies<descriptorRef> 
          </descriptorRefs> 
         <archive> 
             <manifest> 
                 <mainClass>com.HelloWorld</mainClass> 
           </manifest> 
          </archive>
        </configuration> 
      <executions> 
        <execution> 
        <id>make-assembly</id> 
        <phase>package</phase> 
        <goals> 
          <goal>assembly</goal> 
        </goals> 
        </execution> 
      </executions> 
    </plugin>
    运行mvn assembly:assembly ( 我自己使用mvn clean package也是可以的) 

    批注:
    这个方式和方式1不同,这种打包方式,将项目及所依赖的所有jar文件以类的方式打入jar包,让打出来的JAR包成为一个可独立运行的JAR包
  • 相关阅读:
    P4165 [SCOI2007]组队
    CF575B
    SG函数胡乱一气
    CF280C Game on Tree
    AGC010F
    CF140E
    多功能的低功耗蓝牙可穿戴设备用于监测血液酒精浓度
    智能手环幕后的英雄
    图像处理实用资源
    15.12DataGridView分页显示
  • 原文地址:https://www.cnblogs.com/iwideal/p/6021531.html
Copyright © 2011-2022 走看看