org.apache.maven.project.MavenProject对象是maven插件里在MAVEN运行时自动会获取到的,但是我现在写了个自动化部署环境的代码通过继承AbstractMojo的一个testMojo类进行MavenProject对象的操作时里面是NULL,有没有什么办法能获取到这个MavenProject对象呢?
我想手动调用execute()方法来获取几个我需要的信息,我的代码是:
@SuppressWarnings("unchecked")
public class GenerateTriggerMojo extends AbstractMojo {
/**
* @parameter
*/
private List<String> searchPackageNames;
/**
* @parameter expression="${project}"
*/
private MavenProject mavenProject;
@Override
public void execute() throws MojoExecutionException, MojoFailureException {
searchPackageNames=null;
//Model model=new Model();
//model.setArtifactId("test.mojo");
//mavenProject=new MavenProject(model);
//mavenProject.setArtifactId("test.mojo");
//File file =new File("Volumes/MacHD/Users/john/Documents/workspace/MojoTest");
//mavenProject.setFile(file);
//mavenProject.setGroupId("com.java");
//init();
String currentModule = mavenProject.getArtifactId();
List<String> classpathElementList = (List<String>) mavenProject.getCompileClasspathElements();
String basedir=mavenProject.getBasedir().toString();
}
}
分享到:
相关推荐
Pom:文件夹,jar和war文件,mavenProject:一个项目,可以放jar和war包,通过pom,一般新创建的maven Project是POM 3.4.创建一个Maven Model 最外面的项目是MavenProject,其它的全部是Maven Model 3.4.1.创建JAR 目录...
POM是Maven的核心对象模型,在Maven2中POM已由project.xml转移到pom.xml中使用,版本也由3升级为4。对于项目,一般只需要pom.xml就行了。 在Maven2中不需要也不提倡使用maven.xml,原因如下: • plugin的易用性的...
pom.xml-该文件是Web服务的Maven项目对象模型 src / main-此目录包含您的Java服务源文件 src / test-此目录包含您的Java服务单元测试文件 入门 这些说明假定您要在本地计算机上进行开发,而不是从Amazon EC2实例本身...
股票指标源码java 简单的股票 API 这是一个示例应用程序,它提供了管理简单股票和交易的方法。 这是作为提供以下操作的简单 Web 服务提供的: 记录交易 记录一只股票 获取库存详情 计算股票股息 计算股票市盈率 根据...
Maven基于项目对象模型(Project Object Model,POM)来管理项目,通过在项目根目录下的pom.xml文件中定义项目的结构、依赖、插件等信息,来指导Maven进行项目的构建和管理。 以下是Maven的一些主要特点和功能: ...
最近由于工作原因在研究、应用Maven,有了一些体会就写成了此文。本文虽然是Maven2的入门文章,但并不涉 及 Maven的历史、下载与安装,这些内容可以到Maven的官方网站上了解。本文主要是关注Maven中的重要概念,并以...
Maven使用一种被称为"项目对象模型"(Project Object Model,POM)的配置文件来描述项目的结构和依赖关系。在POM中,您可以定义项目的基本信息、依赖项、插件和构建配置等。 Maven提供了一组标准的生命周期和插件,...
它带有大量的预定义任务,例如Java代码的编译或其模块化。 Maven的一个关键且相对特定的元素是其作为网络运行的能力。 该工具的历史动机之一是提供一种同步独立项目的方法:信息的标准化发布,jar模块的自动分发。 ...
集合原始java 传染性海绵状脑病工具 TSE数据报告工具是为人畜共患病监测科学网络成员开发的开源Java客户端工具。 该工具允许国家提交和编辑其数据,并将其作为XML数据文件自动上传到EFSA数据收集框架(DCF)。 依存...
内容 批准测试 捕获人类智能-ApprovalTests是一个开源断言/验证库,可帮助进行单元测试。...在Maven Central上,搜索“ approvaltests”。 如果您使用的是Maven,请将其添加到pom文件中: < dependency>
版本1:使用Maven进行包管理,使用CircleCI进行自动化测试,在生命周期绑定Checkstyle,SpotBugs插件保证代码质量。使用Flyway工具完成数据库初始化建表并添加原始数据工作 版本2:每个类的逻辑尝试的少,将版本1的...
起步依赖本质上是一个Maven项目对象模型(Project Object Model,POM),定义了对其他库的传递依赖,这些东西加在一起即支持某项功能。简单的说,起步依赖就是将具备某种功能的坐标打包到一起,并提供一些默认的功能...
起步依赖本质上是一个Maven项目对象模型(Project Object Model,POM),定义了对其他库的传递依赖,这些东西加在一起即支持某项功能。简单的说,起步依赖就是将具备某种功能的坐标打包到一起,并提供一些默认的功能...
起步依赖本质上是一个Maven项目对象模型(Project Object Model,POM),定义了对其他库的传递依赖,这些东西加在一起即支持某项功能。简单的说,起步依赖就是将具备某种功能的坐标打包到一起,并提供一些默认的功能...
起步依赖本质上是一个Maven项目对象模型(Project Object Model,POM),定义了对其他库的传递依赖,这些东西加在一起即支持某项功能。简单的说,起步依赖就是将具备某种功能的坐标打包到一起,并提供一些默认的功能...
起步依赖本质上是一个Maven项目对象模型(Project Object Model,POM),定义了对其他库的传递依赖,这些东西加在一起即支持某项功能。简单的说,起步依赖就是将具备某种功能的坐标打包到一起,并提供一些默认的功能...
此处的代码不使用任何外部库(例如JUnit),也不需要运行Maven或Gradle,因此您可以使用自己喜欢的编辑器来运行代码。 资料夹布局 您会注意到,它没有使用通常发现的标准文件夹结构: /src/...
概述该项目包含用于读取和写入序列化数据的扩展组件。...安装方式Maven依赖在准备好发布该项目之前,您必须先签出源代码并自己构建它。 可以使用所有标准的maven命令来完成。 要在基于Maven的项目上使用
- Project/Module 模式,一共有三个 Module : - core 用于存放核心代码与工具 - database 用于存放数据库有关代码 - web 用于存放 servlet 和 jsp 有关代码 - 数据库连接部分采用了 Hikari 连接池 ---
一个示例多模块项目,可以在Gradle,SBT和Maven中进行编译和构建,以展示构建Scala代码的各种方法。 为什么使用Scala: Martin Odersky-我们正处于行业范式转换的中间,功能和对象驱动的编程之间将出现新的平衡,...