簡體   English   中英

使用依賴關系構建Maven

[英]Build Maven with Dependencies

是否可以構建Maven項目,以便將依賴項包含在構建過​​程的輸出中。 例如。 如果我在項目中使用MySQL連接器,則該連接器的jar文件及其依賴項將成為輸出的一部分,因此我可以壓縮所有內容並將其提供給其他人,該項目將立即工作,而無需maven。

我在項目中使用了兩個依賴項:jwbf和mysql-connector-java這是POM文件:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>org.nif.neurolex</groupId>
    <artifactId>BulkChange</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>jar</packaging>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.7</maven.compiler.source>
        <maven.compiler.target>1.7</maven.compiler.target>
    </properties>
    <dependencies>
        <dependency>
            <groupId>net.sourceforge</groupId>
            <artifactId>jwbf</artifactId>
            <version>2.0.0</version>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.31</version>
        </dependency>
    </dependencies>
    <build>
  <plugins>
     <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <version>2.3.2</version>
            <configuration>
                <archive>
                    <manifest>
                        <addClasspath>true</addClasspath>
                        <mainClass>org.nif.neurolex.MainClass</mainClass>
                    </manifest>
                </archive>
            </configuration>
        </plugin>
  </plugins>
</build>


</project>

如果我對它的理解正確,那么您希望將代碼與所有必要的依賴項jar打包在一起,以便構建目標自包含。

如果是這樣,那么可以。 查看Maven組件插件: http : //maven.apache.org/plugins/maven-assembly-plugin/

由於輸出可以是tar或zip,因此您甚至可以在包中包括腳本和目錄(例如bin / *。sh以運行您的應用程序或工具)。 腳本的權限可以在構建時在程序集描述符中設置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM