mvn archetype:generate生成Java项目、Web项目

1. 准备环境

  • Oracle JDK 1.8.0_77

  • Apache Maven 3.3.9

2. Java项目

2.1 生成

下面使用Maven生成一个简单的Java项目:

mvn archetype:generate -DgroupId=net.yedward -DartifactId=hbase-demo -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

修改上面的-DgroupId、-DartifactId配置。

导入eclipse时,可以先通过下面命令转为eclipse支持的maven项目:

mvn eclipse:eclipse

成功生成后,项目结构如下:

mvn生成的java项目目录结构

2.2 构建

(1)编译源程序

mvn clean compile

编译成功,项目目录下会多出一个target目录,target/classes下存放编译后的class文件。

(2)测试

mvn clean test

测试成功,项目目录下target目录下会多一个test-classes目录,存放编译后的测试代码的class文件。

(3)打包

mvn clean package

打包命令执行前,会先执行编译和测试命令。打包成功,项目目录下target目录会多一个XXXXX-1.0-SNAPSHOT.jar包。

(4)安装

mvn clean install

安装命令执行前,会先执行编译、测试、打包命令。安装成功,就会将项目的jar包安装到本地仓库。

(5)运行

java -cp ./target/hbase-demo-1.0-SNAPSHOT.jar net.yedward.App

我是Windows系统,下面是Windows Power Shell中运行的结果:

Power Shell执行结果

java -cp 参数后面是类路径,指定给解释器到哪里找到要运行的.class文件。

3. Java Web项目

3.1 生成

下面使用Maven生成一个简单的web项目:

mvn archetype:generate -DgroupId=net.yedward -DartifactId=my-web-app -DarchetypeArtifactId=maven-archetype-webapp -DinteractivMode=false

成功生成以后,目录结构如下:

Web目录结构

不过,这只是一个空的Web项目,只有一个index.jsp页面。可参考《eclipse中使用maven创建Java web项目的详细步骤》。

3.2 构建

(1)打包

mvn clean package

构建成功后,项目目录下会多一个target目录,target目录下会有一个my-web-app.war,将这个war包复制到tomcat下即可运行。

(2)运行

也可以集成tomcat或jetty插件,来运行web应用。

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>net.yedward</groupId>
  <artifactId>my-web-app</artifactId>
  <packaging>war</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>my-web-app</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
  <build>
    <finalName>my-web-app</finalName>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.tomcat.maven</groupId>
          <artifactId>tomcat6-maven-plugin</artifactId>
          <version>2.2</version>
        </plugin>
        <plugin>
          <groupId>org.apache.tomcat.maven</groupId>
          <artifactId>tomcat7-maven-plugin</artifactId>
          <version>2.2</version>
        </plugin>
        <plugin>
		  <groupId>org.eclipse.jetty</groupId>
		  <artifactId>jetty-maven-plugin</artifactId>
		  <version>9.4.0.v20161208</version>
		</plugin>
      </plugins>
    </pluginManagement>
  </build>
</project>

参考资料

本文标题:mvn archetype:generate生成Java项目、Web项目

本文链接:http://yedward.net/post/420.html

本文版权归作者所有,欢迎转载,转载请以文字链接的形式注明文章出处。

本博客不提供评论功能,有任何问题请发送邮件至:yedward92@qq.com

相关文章