您好,登錄后才能下訂單哦!
idea中怎么打jar包,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
使用idea自帶的打包方式
點擊File ->project structure
選擇Artifacts 然后點擊綠色加號
按圖一次選擇 點擊
完成后會彈出此界面 此時需要注意 信息的填寫十分重要 否則將不能運行
1和2可以使用默認的1 這樣打出的jar包路徑信息不會打到MANIFEST.MF文件中 選擇2會打到該文件中
3必須修改一下 具體原因不清楚 本人在此處卡住 需要修改為src/或者src/main
之后保存 然后點擊Build -> Build Artifacts
之后會在工程中存在一個out目錄 將jar包導出就可以了
方式二
使用maven plugins打包
在pom.xml文件中加入 如下配置
<build>
<plugins>
<!-- 編譯插件 這個可以不使用 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
<compilerArguments>
<verbose />
<bootclasspath>${java.home}/lib/rt.jar</bootclasspath>
</compilerArguments>
</configuration>
</plugin>
<!-- 項目依賴插件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<configuration>
<outputDirectory>${project.build.directory}/lib</outputDirectory>
<excludeTransitive>false</excludeTransitive> <!-- 表示是否不包含間接依賴的包 -->
<stripVersion>false</stripVersion> <!-- 去除版本信息 -->
</configuration>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<!-- 拷貝項目依賴包到lib/目錄下 -->
<outputDirectory>${project.build.directory}/lib</outputDirectory>
<excludeTransitive>false</excludeTransitive>
<stripVersion>false</stripVersion>
</configuration>
</execution>
</executions>
</plugin>
<!-- 項目資源插件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.6</version>
<executions>
<execution>
<id>copy-resources</id>
<phase>package</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<encoding>UTF-8</encoding>
<!-- 拷貝項目src/main/resources/下,除.bat以外的所有文件到conf/目錄下 -->
<outputDirectory>${project.build.directory}/conf</outputDirectory>
<resources>
<resource>
<directory>resource</directory>
<filtering>true</filtering>
<excludes>
<exclude>*.bat</exclude>
</excludes>
</resource>
</resources>
</configuration>
</execution>
<execution>
<id>copy-command</id>
<phase>package</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<encoding>UTF-8</encoding>
<!-- 只拷貝項目src/main/resources/目錄下的.bat文件到輸出目錄下 -->
<outputDirectory>${project.build.directory}</outputDirectory>
<resources>
<resource>
<directory>src/main/resources/</directory>
<filtering>true</filtering>
<includes>
<include>*.bat</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<!-- 打包插件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<!-- 生成MANIFEST.MF的設置 -->
<manifest>
<!-- 為依賴包添加路徑, 這些路徑會寫在MANIFEST文件的Class-Path下 -->
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<!-- jar啟動入口類-->
<mainClass>test.data.com.pythonMain.PMain</mainClass>
</manifest>
<manifestEntries>
<!-- 在Class-Path下添加配置文件的路徑到MANIFEST -->
<Class-Path>conf/</Class-Path>
</manifestEntries>
</archive>
<includes>
<!-- 打jar包時,只打包class文件 -->
<include>**/*.class</include>
</includes>
</configuration>
</plugin>
</plugins>
</build>
此時在target目錄下會存在jar文件和 lib和conf文件夾 需要將這些包一起Copy出去 然后java -jar XX.jar 就可以了
mvn clean package -Ptest -Dmaven.test.skip=true maven打包命令
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。