最近、プロジェクトのニーズのために、私はMavenのパッケージを研究しました、そして、プロジェクトを行う必要があります。
1. 3つのディレクトリ /lib、 /conf、 /binディレクトリを生成します
2。すべてのJARディレクトリを /libディレクトリにコンパイルしてコピーします(libディレクトリにあるmavenのjarパッケージとjar、およびコンパイルされたjarパッケージを含む)
3.プロジェクトルートディレクトリから /binディレクトリにすべてのスタートアップスクリプトをコピーします
4.すべての構成ファイルをSRC/Main/Resourcesから/Confにコピーします
以下は、構成されたpom.xmlです。関連するすべての構成についてコメントしましたが、一目で理解できます。ビルドノードをプロジェクトにコピーすると、基本的に使用できます:)
<Project XMLNS = "http://maven.apache.org/pom/4.0.0" xmlns:xsi = "http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation = "http://maven.apach/4.0. http://maven.apache.org/xsd/maven-4.0.0.0.xsd "> <modelversion> 4.0.0 </modelversion> <groupid> test </groupid> <artifactid> test.common </artifactid> <バージョン> 0.0.1-snapshot </packaging> <packaging> </jar <url> http://maven.apache.org </url> <properties> <project.build.sourceencoding> utf-8 </project.build.sourceencoding> </properties> <deplencies> <! - n lines obicted umested-> </depentis> <リソース> <! - src/main/resourcesディレクトリ内のすべてのファイルをconfディレクトリにコピーします - > <resource> src/main/resources </directory> <targetpath> $ {project.build.directory}/conf </targetpath> </resources> < libディレクトリ) - > <リソース> <directory> lib </directory> <targetpath> $ {project.build.directory}/lib </targetpath> </resource> <! - ルートディレクトリにbin directoryにルートディレクトリにコピー - > <resource> <directory>。 <incride> **/*。bat </include> </incruption> <targetpath> $ {project.build.directory}/bin </targetpath> </resource> </resources> <plugins> <! - compilation-> <plagin> <groupid> org.apache.maven.plugins < <バージョン> 3.1 </version> <configuration> <fork> true </fork> <defaultlibbundledir> lib </defaultlibbundledir> <source> 1.7 </source> <target> 1.7 </target> <encoding> utf-8 </encoding> <! - java_homeが構成されている場合は、無料で実行可能> (x86)/java/jdk1.8.0_91/bin/javac.exe </executable> </configuration> </plugin> <! - jarパッケージを生成するためのプラグイン - > <プラグイン> <groupid> <Configuration> <! - 生成されたJARパッケージをLIBディレクトリに(他のすべてのJARパッケージを使用) - > <OutputDirectory> $ {project.build.directory}/lib </outputDirectory> <Archive> <manifest> <addclasspath> true </addclaspix> </classprefix> </archive> <excludes> <! - いくつかのファイルを除外し、JARパッケージに入れないでください。これは、SRC/Main/リソースのファイルを除外することです(CONFディレクトリに配置する必要があります)。ここでは、除外するターゲットファイルのみを指定できますが、ソースファイルは指定できません。彼らは完璧ではありませんが、基本的に目標を達成することができます。 - > <exclude>*。xml </explude> <exclude>*。プロパティ</explude> </excludes> </configuration> </plugin> <! - maven依存関係をコピーするためのプラグイン - > <プラグイン> <groupid> org.apache.maven.plugins </groopid> maven-depentent-plugin </artifactid> <バージョン> 2.10 </バージョン> <実行> <実行> <id>コピー依存者</id> <phase>パッケージ</phase> <gogle> copy依存者</goal> </goal> <configuration> <! - libディレクトリに依存するすべてのmaven jarパッケージ(すべてのjarパッケージはlibディレクトリにあります) - > <OutputDirectory> $ {project.build.directory}/lib </outputdirectory> </configuration> </execution> </executions> </plugin> <! - リソースのコピー - > <groupid> org.apache.maven.plugins < <バージョン> 2.7 </version> <configuration> <encoding> utf-8 </encoding> </configuration> </plugin> <! - ソースコードJARを生成するプラグインを構成 - > <plugin> <artifactid> maven-source-plugin </artifactid> <バージョン> <Encoding> utf-8 </encoding> <! - ソースコードJARファイルのストレージパスを構成し、他のJARファイルを使用してLIBディレクトリに配置 - > <outputDirectory> $ {project.build.directory}/lib </outputdirectory> </configuration> </goal> </execution> </executions> </plugin> </plugins> </build> </project>次に、Mavenパッケージパッケージを実行します。 Eclipseの場合は、Project Explorer-> run as> maven build…>ゴールにパッケージを入力し、[実行]をクリックしてコンパイルします。
Bin DirectoryのBat.batは、次のように書くことができます。
@echo offset classpath =%java_home%/libset java =%java_home%/bin/javaset classpath =%classpath%; ../ confset java_options = -djava.ext.dirs = "../ lib" "%java%" -xms512m -xmx1024m -classpath " %java_options%test.hangqingentrance
その上:
Conf DirectoryにはSRC/Main/Resourcesからコピーされた構成ファイルを保持しているため、ClassPathにconfディレクトリを追加します。
settings -djava.ext.dirs = "../ lib"。 JARパッケージはLIBディレクトリに配置されているためです。
上記は、Mavenを使用してJavaプロジェクトをパッケージ化するようにpom.xmlを構成するためのメソッド(推奨)の完全な内容です。誰もがwulin.comをもっとサポートできることを願っています〜