是否有可能只使用eclipse和共享构建一个java项目?

Siv*_*iva 16 java eclipse maven

是否有可能实际构建一个包含java代码的maven项目,并且可以共享二进制文件?

问题:我正在尝试构建的项目需要大约3-4个小时,并且需要高互联网带宽.我试图检查在其他几台机器中重新使用这个构建项目的可能性.

我之前使用过涉及makefile的c ++项目,这非常简单.我是Java/eclipse的新手,需要帮助才能弄清楚这是否真的有可能.

PS:我确实试图找到现有的解决方案; 他们不是明星前锋,或者他们说不能这样做

Tha*_*nga 15

构建一次并离线共享

在Maven中,您只能构建一次项目,并获得一个完全包含所有依赖项的JAR文件.这样,您可以将此JAR与其他机器脱机共享.

以下是制作它的步骤.

  1. 首先使用以下设置更新您的pom.xml
 <build>
  <plugins>
    <plugin>
      <artifactId>maven-assembly-plugin</artifactId>
      <configuration>
        <archive>
          <manifest>
            <mainClass>com.thanga.MyTest[REPLACE WITH YOUR MAIN CLASS]</mainClass>
          </manifest>
        </archive>
        <descriptorRefs>
          <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
      </configuration>
    </plugin>
  </plugins>
</build>
Run Code Online (Sandbox Code Playgroud)
  1. 使用package assembly:single如下所示的目标打包您的项目

在控制台中,

 mvn package assembly:single
Run Code Online (Sandbox Code Playgroud)

在日食中,

在此输入图像描述


  1. 运行此命令,您就可以获得两个JAR文件.其中一个MyFullPack-0.0.1-SNAPSHOT-jar-with-dependencies.jar已加载完整的依赖项.

在此输入图像描述


  1. 您可以打开JAR以查看依赖项已打包,如下所示.

在此输入图像描述


  1. 您可以离线共享此JAR到其他计算机,而无需进行任何构建


Hel*_*rld 8

是否有可能实际构建一个包含java代码的maven项目,并且可以共享二进制文件?

是的,这就是Maven的全部内容,您只需构建一次项目,从而生成一个存储在本地maven存储库中的工件(您的jar/war ...).

以下命令构建项目并将其保存在本地repo中:

mvn clean install 
Run Code Online (Sandbox Code Playgroud)

但是,如果执行此操作,则只有本地仓库上的工件.

一个好的做法是创建一个存储库并将工件存储在那里:https: //maven.apache.org/repository-management.html

使用以下命令会将快照依赖项存储在存储库中:

mvn clean deploy
Run Code Online (Sandbox Code Playgroud)

然后,您可以通过dependencies在新项目的pom.xml文件中指定,通过多台计算机重用您的组件.

您可能想看一下本指南:

http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html

显然,您需要配置存储库和maven项目才能使用此类设置.