Idea vertx 打jar包

vertx项目打包两种方式:

一、使用DIEA(build)打包(推荐)

File ==>> Porject Structure ==>> Project Settings ==>> Artifects ==>> +号 ==>> 选择From modules with dependencies

IDEA Vertx项目打包.png

可以配置打包后的jar文件所在路径、jar文件的main方法入口、选择打入jar包里的依赖文件等。

二、使用maven打包(也可以使用IDEA集成的maven插件直接打包)

以下依赖为解决打包时的异常所添加。
1、maven-jar-plugin 依赖为了指定方法主入口,即:解决启动时报“kafkaweb.jar”
2、只要不加入新的依赖,maven-dependency-plugin原则上只需要使用一次,得到lib包以后一直使用即可,故将其注释掉。
(1)maven-dependency-plugin 依赖是为了打包时将所有依赖打成lib包,再在启动时指定这些外部依赖的地址。
启动命令:java -Djava.ext.dirs=JAVA_HOME/jre/lib/ext:/home/kafkaweb/target/lib -jar kafkaweb.jar
(2)或者将lib包拷贝到jre的扩展类库——$JAVA_HOME/jre/lib/ext/
启动命令:java -jar kafkaweb.jar

pom.xml文件中需要添加相关依赖

<build>
    <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-jar-plugin</artifactId>
          <version>3.2.0</version>
          <configuration>
              <archive>
                  <manifest>
                      <addClasspath>true</addClasspath>
                      <mainClass>com.donews.data.KafkaHttpServer</mainClass> <!-- 此处为主入口-->
                  </manifest>
              </archive>
          </configuration>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-dependency-plugin</artifactId>
          <version>3.0.1</version>
          <executions>
              <execution>
                  <id>copy-dependencies</id>
                  <phase>package</phase>
                  <goals>
                      <goal>copy-dependencies</goal>
                  </goals>
                  <configuration>
                      <outputDirectory>target/lib</outputDirectory>
                      <!--不需要导出的jar-->
                      <excludeArtifactIds>
                          spring-boot-devtools,junit
                      </excludeArtifactIds>
                      <!--不需要导出的jar-->
                      <overWriteSnapshots>true</overWriteSnapshots>
                  </configuration>
              </execution>
          </executions>
        </plugin>
  </plugins>
</build>
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容