1. mvn clean compile,mvn clean test,mvn clean package 和 mvn clean install:
执行test之前是会先执行compile的,执行package之前是会先执行test的,install之前会执行package。
2.scope的分类
compile:默认值 他表示被依赖项目需要参与当前项目的编译,还有后续的测试,运行周期也参与其中,是一个比较强的依赖。打包的时候通常需要包含进去
test:依赖项目仅仅参与测试相关的工作,包括测试代码的编译和执行,不会被打包,例如:junit
runtime:表示被依赖项目无需参与项目的编译,不过后期的测试和运行周期需要其参与。与compile相比,跳过了编译而已。例如JDBC驱动,适用运行和测试阶段
provided:打包的时候可以不用包进去,别的设施会提供。事实上该依赖理论上可以参与编译,测试,运行等周期。相当于compile,但是打包阶段做了exclude操作
system:从参与度来说,和provided相同,不过被依赖项不会从maven仓库下载,而是从本地文件系统拿。需要添加systemPath的属性来定义路径
3.默认打包生成jar是不能够直接运行的,因为带有main方法的类信息不会添加到manifest中(打开jar文件中的META-INF/MANIFEST.MF文件,将无法看到Main-Class一行)。
我们在pom.xml配置mainClass为org.myorg.quickstart.StreamingJob,项目在打包时会将该信息放到MANIFEST中。现在执行mvn clean package, 打开target/目录,可以看到quickstart-1.0.jar和original-quickstart-1.0.jar,前者是带有Main-Class信息的可执行jar,后者是原始的jar。打开quickstart-1.0.jar的META-INF/MANIFEST.MF,可以看到它包含这样一行信息:
Main-Class:org.myorg.quickstart.StreamingJob
现在,在项目根目录中执行该jar文件:
D:\flink\quickstart> java -jar target\quickstart-1.0.jar,可以得到正确的输出了。
默认打包是生成jar的,如果我的项目还有main方法的,我想打包成可执行的jar包,为了生成可执行的jar文件,需要借助maven-shade-plugin,配置该插件如下:
- 大小: 114.9 KB
分享到:
相关推荐
《 Maven 3.6.1与3.6.2版本的区别及使用心得 》 Maven,作为Java项目管理和构建工具,一直以来都是开发者们的重要助手。本文将详细探讨Maven的两个具体版本——3.6.1和3.6.2,以及在使用过程中可能遇到的问题和解决...
本文详细介绍了如何在Eclipse中导入Maven项目,包括Step1、Step2和Step3三个步骤,并提供了一些有用的Tips。在Eclipse中导入Maven项目可以帮助开发者更好地管理项目依赖关系和编译过程,从而提高开发效率。
【Java Tips】这篇博客主要探讨了Java编程中的实用技巧和最佳实践,旨在帮助开发者提高代码质量和效率。在Java开发过程中,理解和掌握这些技巧是至关重要的,因为它们可以帮助我们避免常见错误,优化性能,并且使...
开发者可以将这个文件的路径设置到Maven的`settings.xml`中,以便Maven在构建过程中自动遵循这些规则。 JHipster-Registry是JHipster生态系统的一部分,它是一个用于管理微服务配置的注册中心,基于Eureka和Zuul。...
19. **模块化与打包**:Maven或Gradle的使用,理解模块化项目的构建和打包过程。 20. **性能优化**:分析和优化Java程序的性能,包括CPU和内存的监控,以及代码的优化技巧。 以上只是部分可能涵盖在《500 Java ...
11. **单元测试和持续集成**:JUnit和Maven等工具是Java开发中的标准配置,文档可能包含如何编写和组织单元测试,以及如何设置持续集成流程。 12. **最新特性**:随着Java版本的更新,新特性如Lambda表达式、...
15. **单元测试与持续集成**:JUnit和Maven等工具的使用,以及TDD(测试驱动开发)和CI/CD(持续集成/持续交付)的概念。 这些只是可能包含在《330_tips_Jul22_2003》中的部分主题。每个提示可能深入探讨一个特定的...
- 可以与CI/CD工具(如Jenkins, Maven, Gradle)集成,实现自动化构建和部署。 以上只是Open Liberty使用的一些基本知识点,实际开发中可以根据具体需求进一步探索其高级功能,如微服务支持、云原生特性、性能优化...
Mblog 开源Java博客系统, 支持多用户, 支持切换主题 配置:src/main/resources/application-mysql.yml (数据库账号... TIPS: 如遇到启动失败/切换环境变量后启动失败的,请先maven clean后再尝试启动 IDE得装lombok插件
19. **模块化构建工具Maven或Gradle**:了解如何配置和使用这些工具来管理依赖和构建项目。 20. **Java最新版本特性**:关注Java的最新发展,例如Java 11、12及更高版本引入的新特性。 以上只是Java编程中的一部分...
在准备环境中,我们需要安装Java虚拟机(JVM)、Apache Maven、Git等必备工具。同时,我们还需要配置环境变量,以便在命令行中可以正确地调用poetize命令。 在安装poetize之前,我们需要下载poetize的二进制文件,...
2019级重庆理工大学数据结构课程设计 题目1一元多项式计算器 题目2 数据压缩与解压缩 ...tips:这是maven项目,如果你的电脑没有配置maven,应该不太行,不过你可以把主要代码移动到你的工程里面
Tips 1. 在项目中创建bin文件夹,并在bin目录下touch start.sh与stop.sh文件,以便可以在项目中执行脚本。 2. 使用Maven插件来启动和停止SpringBoot项目可以使我们的项目更加简洁和高效。 3. 在使用脚本时,需要...
Maven,您还可以从我们提供的原型中受益,以启动您的项目: vaadin-archetype-application - 基本应用程序框架 vaadin-archetype-application-multimodule - 具有生产和开发配置文件的多模块项目 vaadin-archetype-...
9. **持续集成与部署**:WebLogic Server支持Maven、Ant等构建工具,方便集成到持续集成流程中,实现自动化部署。 10. **WebLogic与云**:随着云计算的发展,WebLogic Server也支持在AWS、Azure等云平台上部署,...
本教程基于 "T01_SpringCrunchifyMVCTutorial",旨在深入讲解如何创建并运行一个基本的 Spring MVC 项目,即 "Spring-mvc-hello-world-example-tutorial-spring-model-view-controller-tips"。这个教程由 Crunchify....
运行系统 ...进入Autumn-Framework目录cd Autumn-Framework 执行mvn install 再进入cms目录cd cms 在执行mvn tomcat7:run 最后在浏览器中访问localhost:...Tips:以上所有操作基于您的电脑已经安装了jdk8、maven3和git环
10. **插件扩展**:Eclipse 插件生态系统庞大,比如 Mylyn 可以提高任务管理效率,m2e 用于 Maven 集成,Subversive 或 Subclipse 支持 SVN 版本控制等。善用插件可以进一步提升开发体验。 总的来说,这十个 ...