我只是代码的搬运者

<build>
    <sourceDirectory>src/main/java</sourceDirectory>
     <resources>
            <resource>
                <directory>src/main/resources</directory>
                <targetPath>${project.build.directory}</targetPath>
                <excludes>
                    <exclude>**/*.java</exclude>
                </excludes>
            </resource>
        </resources>
        <pluginManagement>
  <plugins>
  <!-- Ignore/Execute plugin execution -->
   <plugin>
    <groupId>org.eclipse.m2e</groupId>
    <artifactId>lifecycle-mapping</artifactId>
    <version>1.0.0</version>
    <configuration>
     <lifecycleMappingMetadata>
      <pluginExecutions>
       <pluginExecution>
        <pluginExecutionFilter>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-dependency-plugin</artifactId>
         <versionRange>[1.0.0,)</versionRange>
         <goals>
          <goal>copy-dependencies</goal>
          <goal>unpack</goal>
         </goals>
        </pluginExecutionFilter>
        <action>
         <ignore />
        </action>
       </pluginExecution>
      </pluginExecutions>
     </lifecycleMappingMetadata>
    </configuration>
   </plugin>
  </plugins>
  </pluginManagement>
        <plugins>
   <plugin>
    <artifactId>maven-dependency-plugin</artifactId>
    <version>2.6</version>
    <executions>
     <execution>
      <id>copy-dependencies</id>
      <phase>package</phase>
      <goals>
       <goal>copy-dependencies</goal>
      </goals>
      <configuration>
       <outputDirectory>${project.build.directory}/lib</outputDirectory>
       <overWriteReleases>false</overWriteReleases>
       <overWriteSnapshots>false</overWriteSnapshots>
       <overWriteIfNewer>true</overWriteIfNewer>
       <excludeTransitive>true</excludeTransitive>
      </configuration>
     </execution>
    </executions>
   </plugin>
            <!-- 生成可执行JAR包命令 maven-jar-plugin -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <configuration>
                    <archive>
                        <manifest>
                            <addClasspath>true</addClasspath>
                            <classpathPrefix></classpathPrefix>
                             <mainClass>指定运行的主函数类</mainClass>  
                        </manifest>
                        <manifestEntries>
                            <Class-Path>.</Class-Path>
                        </manifestEntries>
                    </archive>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <executions>
                    <execution>
                        <id>copy</id>
                        <phase>install</phase>
                        <goals>
                            <goal>copy-dependencies</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>
                                ${project.build.directory}/
                            </outputDirectory>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <!-- 打包源码一起发布到maven仓库中 -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <configuration>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
			<plugin>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>2.3.2</version>
				<configuration>
					<source>1.7</source>
					<target>1.7</target>
					<encoding>UTF-8</encoding>
					<compilerArguments>
						<extdirs>src/main/lib</extdirs>
					</compilerArguments>
				</configuration>
			</plugin>
        </plugins>
    <finalName>jarname</finalName>
  </build>            

 也可以吧引入的包都打包的一个lib 文件夹下面

<manifest>					   
     <mainClass>运行的主函数的类</mainClass>
     <!-- 打包时 MANIFEST.MF文件不记录的时间戳版本 -->
     <useUniqueVersions>false</useUniqueVersions>
     <addClasspath>true</addClasspath>
     <classpathPrefix>lib/</classpathPrefix>
</manifest>             

 不过这样需要读取一些resources 文件夹下面的文件就需要手动的复制到该项目路径下,否则读取不到

 

posted on 2017-04-26 14:00  秦水坡  阅读(204)  评论(0编辑  收藏  举报