中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

用maven將swing項目打成可執行jar包(含依賴)

發布時間:2020-06-21 11:47:03 來源:網絡 閱讀:6268 作者:rickqin 欄目:大數據

本文介紹通過maven將項目打成可執行jar包的方法。

本文需要讀者具備maven基礎知識,了解maven的一般配置、插件配置,了解maven的phase、goal的概念,了解dependency和manifest的作用。

先決條件:

(本文所述方法適用于項目的特點)

1、項目必須是maven項目;

3、項目中必須有一個主入口類,在用戶雙擊打包后的jar文件時可以被執行。

打包:

第一種情況:獨立項目,且無第三方依賴包

這種情況下,我們需要maven的maven-jar-plugin插件來幫我們打包。請在項目pom.xml中的plugin配置處加入如下內容:(注意看<!-- -->注釋部分)

...
<plugin>
    <artifactId>maven-jar-plugin</artifactId>
    <version>2.3.2</version>
    <configuration>
        <archive>
            <manifest>
                <addClasspath>true</addClasspath>
                <!-- 如果項目帶有3rd-party lib,這些依賴將被放入lib文件夾 -->
                <!-- 注意:這個文件夾要隨著jar文件一起distribute,否則jar文件運行時將報錯 -->
                <classpathPrefix>lib/</classpathPrefix>
                <mainClass>com.yourProjectPackage.YourEntranceClass</mainClass>
            </manifest>
        </archive>
    </configuration>
</plugin>
...

然后用mvn clean install來編譯安裝你的項目。命令執行結束后會生成一個jar文件,一個lib文件夾(如果你的項目引用了3rd-party dependencies的話)。雙擊jar文件,就立刻看到效果了。有界面的項目應該能看到主界面(如果你程序沒錯的話),沒有界面的,應該可以從你機器的java console里看到相關信息,或者項目自身有log輸出或具有神奇的效果的,可以直接去檢視輸出結果。


第二種情況:項目+第三方依賴包

這種情況就無法使用maven-jar-plugin插件來打包了。我們要用另一個插件maven-assembly-plugin。這個插件可以幫助我們靈活的打包我們的項目(不僅打包jar項目,還可以用于ear、war等項目的打包,本文只介紹如何打可執行jar包)。這里,我們使用此插件將我們的source code編譯結果以及項目的dependencies打到一起,形成一個jar文件。

下面就是項目的pom.xml中plugin的配置部分:

<plugin>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>2.6</version>
    <configuration>
        <!-- 這個archive以及archive里面的設置很重要,沒有這個配置,就無法生成可執行jar文件 -->
        <archive>
            <manifest>
                <mainClass>com.your.package.YourEntranceClass</mainClass>
            </manifest>
        </archive>
        <!-- 這個jar-with-dependencies是這個插件中預置的,不用管它,盡管用就好了 -->
        <!-- 當然,你也可以用自己的descriptor。如何用?自己去查這個插件的文檔 -->
        <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
    </configuration>
    <executions>
        <execution>
            <id>make-assembly</id>
            <!-- 這里的phase和goals都是maven的基礎概念,不懂的可以去看maven的文檔 -->
            <!-- 總之,當你install你的project的時候,是會涵蓋package phase和single goal的 -->
            <phase>package</phase>
            <goals>
                <goal>single</goal>
            </goals>
        </execution>
    </executions>
</plugin>

添加了此plugin之后,就可以clean install你的maven項目了。然后在maven命令執行結束后的console里會找到類似以下內容:

--- maven-install-plugin:2.4:install (default-install) @ MvnCfgSwitcher ---
Installing F:\uuuu\vvvv\Wwwww\target\Wwwww-1.0-SNAPSHOT.jar to Y:\mvn_repo\com\yourname\Wwwww\1.0-SNAPSHOT\Wwwww-1.0-SNAPSHOT.jar
Installing F:\uuuu\vvvv\Wwwww\pom.xml to Y:\mvn_repo\com\yourname\Wwwww\1.0-SNAPSHOT\Wwwww-1.0-SNAPSHOT.pom
Installing F:\uuuu\vvvv\Wwwww\target\Wwwww-1.0-SNAPSHOT-jar-with-dependencies.jar to Y:\mvn_repo\com\yourname\Wwwww\1.0-SNAPSHOT\Wwwww-1.0-SNAPSHOT-jar-with-dependencies.jar

其中藍色標識部分就是生成的all-in-one的可執行jar文件。


快雙擊打包結果試試看吧,親!



向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

永寿县| 确山县| 庐江县| 邯郸市| 庆安县| 育儿| 谢通门县| 余庆县| 古田县| 轮台县| 舟山市| 沂水县| 无锡市| 花莲市| 车致| 密山市| 佛冈县| 井研县| 平顺县| 铜陵市| 金寨县| 天长市| 温州市| 保德县| 家居| 大厂| 青神县| 天峨县| 彭泽县| 华亭县| 广昌县| 巴林右旗| 山西省| 桃园市| 衡东县| 牙克石市| 湾仔区| 济阳县| 五指山市| 曲沃县| 信阳市|