使用maven生成带依赖的jar

using maven package with dependencies

编译、打包需要一个独立运行的jar。

##生成MAINFEST.MF 项目源码根路径下添加META-INF/MAINFEST.MF文件,用于指向还有启动类。

##maven配置修改

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
       <artifactId>maven-compiler-plugin</artifactId>
        <version>2.3.2</version>
    </plugin>
<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>
                <!--指明main方法所在的类-->
                <mainClass>com.wei.spider.Main</mainClass>
            </manifest>
        </archive>
    </configuration>
</plugin>
<plugin>
    <artifactId>maven-assembly-plugin</artifactId>
    <configuration>
        <archive>
            <manifest>
                <!--指明main方法所在的类-->
                <mainClass>com.wei.spider.Main</mainClass>
            </manifest>
        </archive>
        <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
    </configuration>
    <executions>
        <execution>
            <id>make-assembly</id>
            <phase>package</phase>
            <goals>
                <goal>single</goal>
            </goals>
        </execution>
    </executions>
</plugin>

##编译打包、运行

使用命令mvn clean compile assembly:single打包项目。使用java -jar demo.jar运行。