当前位置: 首页> 新闻> 焦点 > 网络营销课程多少钱_建设银行app_网站竞价推广怎么做_广州seo网络优化公司

网络营销课程多少钱_建设银行app_网站竞价推广怎么做_广州seo网络优化公司

时间:2025/7/10 10:36:26来源:https://blog.csdn.net/qq_42631788/article/details/142182557 浏览次数:0次
网络营销课程多少钱_建设银行app_网站竞价推广怎么做_广州seo网络优化公司

文章目录

      • 1. **标准 JAR 打包**
        • **打包方式**
        • **配置示例**
        • **使用方式**
        • **优点**
        • **缺点**
      • 2. **可执行 JAR(Executable JAR)**
        • **打包方式**
        • **配置示例**
        • **使用方式**
        • **优点**
        • **缺点**
      • 3. **Uber JAR(Fat JAR / Shadow JAR)**
        • **打包方式**
        • **配置示例(maven-shade-plugin)**
        • **使用方式**
        • **优点**
        • **缺点**
      • 4. **Spring Boot JAR(Spring Boot Executable JAR)**
        • **打包方式**
        • **配置示例**
        • **使用方式**
        • **优点**
        • **缺点**
      • 总结

Maven 提供了多种打包方式,每种方式都有其特定的用途和优缺点。以下是 Maven 常见的打包方式以及它们在使用上的区别:

1. 标准 JAR 打包

打包方式

使用 maven-jar-plugin 插件打包。生成的 JAR 文件仅包含编译后的类文件和资源文件,不包括依赖项。

配置示例
<build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-jar-plugin</artifactId><version>3.2.0</version><configuration><archive><manifest><mainClass>com.example.MainClass</mainClass></manifest></archive></configuration></plugin></plugins>
</build>
使用方式
  • 运行:
    java -cp target/your-artifact-id-version.jar com.example.MainClass
    
    需要指定类路径 (-cp) 来包含 JAR 文件和其他依赖项。
优点
  • 文件较小,只包含项目的代码和资源文件。
  • 适合在依赖项已经被管理的环境中使用,例如服务器或容器中。
缺点
  • 启动时需要手动管理类路径,比较麻烦。
  • 依赖项需要在运行时能够被找到,不适合分发给最终用户的场景。

2. 可执行 JAR(Executable JAR)

打包方式

同样使用 maven-jar-plugin 插件,但在 MANIFEST.MF 文件中指定主类,使得 JAR 文件可以直接被执行。

配置示例
<build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-jar-plugin</artifactId><version>3.2.0</version><configuration><archive><manifest><mainClass>com.example.MainClass</mainClass></manifest></archive></configuration></plugin></plugins>
</build>
使用方式
  • 运行:
    java -jar target/your-artifact-id-version.jar
    
优点
  • 简化了运行命令,无需指定类路径。
  • 更易于分发和运行,特别适合终端用户使用。
缺点
  • 依赖项仍然需要在运行时可用。
  • 仅适用于不需要包含所有依赖项的场景。

3. Uber JAR(Fat JAR / Shadow JAR)

打包方式

使用 maven-shade-pluginmaven-assembly-plugin 插件生成的 JAR 文件,其中包含了所有的依赖项。

配置示例(maven-shade-plugin)
<build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-shade-plugin</artifactId><version>3.4.1</version><executions><execution><phase>package</phase><goals><goal>shade</goal></goals><configuration><transformers><transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"><mainClass>com.example.MainClass</mainClass></transformer></transformers></configuration></execution></executions></plugin></plugins>
</build>
使用方式
  • 运行:
    java -jar target/your-artifact-id-version-shaded.jar
    
优点
  • 包含所有依赖项,简化了部署和运行过程。
  • 适合在没有外部依赖项的环境中运行。
缺点
  • 生成的 JAR 文件可能较大。
  • 可能会出现类冲突或依赖重复的问题,需要额外配置来处理。

4. Spring Boot JAR(Spring Boot Executable JAR)

打包方式

使用 spring-boot-maven-plugin 插件生成的 JAR 文件,包含了 Spring Boot 运行时和所有的项目依赖。

配置示例
<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>3.0.0</version></plugin></plugins>
</build>
使用方式
  • 运行:
    java -jar target/your-artifact-id-version.jar
    
优点
  • 包含所有依赖和 Spring Boot 特性,简化了部署和运行过程。
  • 提供内嵌的服务器(如 Tomcat、Jetty)以运行 Spring Boot 应用程序,无需额外的应用服务器。
缺点
  • 文件可能较大,因为包含了所有的依赖项。
  • 对于不使用 Spring Boot 的项目,这种打包方式可能显得过于复杂。

总结

  • 标准 JAR: 适合在依赖项已经被管理的环境中使用,需要手动指定类路径。
  • 可执行 JAR: 简化运行过程,但不包含所有依赖项,适合分发给用户。
  • Uber JAR: 包含所有依赖项,便于在无外部依赖的环境中运行,但文件较大。
  • Spring Boot JAR: 包含所有依赖和 Spring Boot 特性,适合 Spring Boot 项目,简化了运行和部署。

根据项目需求和目标环境选择合适的打包方式,可以提高开发效率和部署灵活性。

希望对你有所帮助,若有问题欢迎指正~😊

关键字:网络营销课程多少钱_建设银行app_网站竞价推广怎么做_广州seo网络优化公司

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: