本教程将会讲解如何用maven来创建一个java项目,并把项目导入到eclipse中,并利用maven来打成jar包。
本教程用到的开发工具:
1.Apache Maven 3.3.3
2.Eclipse Mars Release (4.5.0)
3.JDK 7
引用
注意:
在项目开始之前,请确保你已经在开发环境中安装了Maven,你可以在控制台输入:mvn --version 来查看是否安装了maven,如果提示mvn command not find的话,请自行google如何安装maven
1. 使用一个maven的其中一个模板来创建一个java项目
首先来到你要新建项目的文件目录,打开命令行窗口, 在命令行窗口中,输入如下的命令:
mvn archetype:generate -DgroupId={project-packaging}
-DartifactId={project-name}
-DarchetypeArtifactId=maven-archetype-quickstart
-DinteractiveMode=false
以上命令就是告诉maven按照maven-archetype-quickstart模板来创建一个java项目,如果你没有指定archetypeArtifactId选项的话,系统将会列出所有的maven模板。
举个例子:
mvn archetype:generate -DgroupId=com.luchenghao -DartifactId=NumberGenerator -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
[INFO] Scanning for projects...
Downloading:xxx
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] >>> maven-archetype-plugin:2.0:generate (default-cli) > generate-sources
@ standalone-pom >>>
[INFO]
[INFO] <<< maven-archetype-plugin:2.0:generate (default-cli) < generate-sources
@ standalone-pom <<<
[INFO]
[INFO] --- maven-archetype-plugin:2.0:generate (default-cli) @ standalone-pom --
-
[INFO] Generating project in Batch mode
[INFO] -------------------------------------------------------------------------
---
[INFO] Using following parameters for creating project from Old (1.x) Archetype:
maven-archetype-quickstart:1.0
[INFO] -------------------------------------------------------------------------
---
[INFO] Parameter: groupId, Value: com.luchenghao
[INFO] Parameter: packageName, Value: com.luchenghao
[INFO] Parameter: package, Value: com.luchenghao
[INFO] Parameter: artifactId, Value: NumberGenerator
[INFO] Parameter: basedir, Value: C:\Users\e611265\workspace
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] ********************* End of debug info from resources from generated POM
***********************
[INFO] project created from Old (1.x) Archetype in dir: C:\Users\e611265\workspa
ce\NumberGenerator
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 24.356 s
[INFO] Finished at: 2017-02-08T15:37:28+08:00
[INFO] Final Memory: 10M/27M
[INFO] ------------------------------------------------------------------------
上面的例子中,就创建了一个NumberGenerator的java项目,项目的目录结构就都创建好了。
2. 项目目录结构如下:
使用mvn archetype:generate和maven-archetype-quickstart模板得到的结果:
引用
NumberGenerator
|-src
|---main
|-----java
|-------com
|---------luchenghao
|-----------App.java
|---test
|-----java
|-------com
|---------luchenghao
|-----------AppTest.java
|-pom.xml
Maven目录链接:
http://maven.apache.org/guides/introduction/introduction-to-the-standard-directory-layout.html
Pom Guide链接:
http://maven.apache.org/guides/introduction/introduction-to-the-pom.html
生成的pom.xml文件:
<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>com.luchenghao</groupId>
<artifactId>NumberGenerator</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>NumberGenerator</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>
</project>
3. Eclipse IDE
使用下面的命令把NumberGenerator项目转换成eclipse项目
mvn eclipse:eclipse
这个命令会产生eclipse项目所需要的.project和l.classpath文件
项目结构如下:
按照如下步骤,把项目导入到eclipse中, 选择“File -> Import… -> General->Existing Projects into Workspace”
4. 更新POM文件
原始的pom文件比较简单,通常情况下,我们需要添加一个plugin来告诉maven使用哪个版本的jdk来编译我们的项目(默认的jdk是1.4的,这个比较老了)
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
然后把junit的version也从3.8.1更新到4.11
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
更新之后的完整的pom文件如下:
<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>com.luchenghao</groupId>
<artifactId>NumberGenerator</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>NumberGenerator</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
然后在命令行,再次执行命令:mvn eclipse:eclipse,Maven会去下载相应的plugin和依赖的jar包。
5. 写业务逻辑
基于TDD(Test Driven Development)测试驱动开发原则,先更新一下UnitTest类。
AppTest.java文件:
package com.luchenghao;
import org.junit.Assert;
import org.junit.Test;
/**
* Unit test for simple App.
*/
public class AppTest
{
@Test
public void testLengthOfTheUniqueKey() {
App obj = new App();
Assert.assertEquals(36, obj.generateUniqueKey().length());
}
}
业务逻辑类App.java
package com.luchenghao;
import java.util.UUID;
/**
* Hello world!
*
*/
public class App
{
public static void main( String[] args )
{
System.out.println( "Hello World!" );
App obj = new App();
System.out.println("Unique ID : " + obj.generateUniqueKey());
}
public String generateUniqueKey() {
String id = UUID.randomUUID().toString();
return id;
}
}
6.打jar包
在项目当前目录下面:
C:\Users\e611265\workspace\NumberGenerator>pwd
C:\Users\e611265\workspace\NumberGenerator
执行如下命令:
mvn package
......
[INFO] Building jar: C:\Users\e611265\workspace\NumberGenerator\target\NumberGen
erator-1.0-SNAPSHOT.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 04:00 min
[INFO] Finished at: 2017-02-08T20:33:29+08:00
[INFO] Final Memory: 8M/26M
[INFO] ------------------------------------------------------------------------
打出来的jar包,在target的目录下面, 参考如下:
7. Demo
执行如下java命令:
当前目录:C:\Users\e611265\workspace\NumberGenerator>
C:\Users\e611265\workspace\NumberGenerator>java -cp target/NumberGenerator-1.0-S
NAPSHOT.jar com.luchenghao.App
Hello World!
Unique ID : 509351b1-3c5d-4b79-b489-220ccea9c38d
项目下载链接:
http://dl.iteye.com/topics/download/8e33c5d7-03d2-3638-8f44-e3095adbb1ca
- 大小: 7.9 KB
- 大小: 9.5 KB
分享到:
相关推荐
在本篇文章中,我们将详细介绍如何使用IntelliJ IDEA 14.1.4版本结合Maven来创建一个Java Web项目。这种方法不仅能够提高开发效率,还能确保项目的结构更加规范。以下是详细的步骤和需要注意的关键点。 #### 二、...
java创建一个简单的Maven项目java创建一个简单的Maven项目java创建一个简单的Maven项目java创建一个简单的Maven项目java创建一个简单的Maven项目java创建一个简单的Maven项目java创建一个简单的Maven项目java创建一...
我们可以使用File-->New-->webProject命令来创建一个新的web项目,并选择添加maven支持。在创建项目时,我们需要指定groupId和ArtifactId,并选择Standard Maven JEE project结构。 在项目创建完成后,我们可以看到...
本教程将指导您使用 IDEA 创建一个 Maven Web 项目,从安装 Maven 到配置 Maven 环境、创建 Maven 工程、pom.xml 文件配置、依赖管理等。 1. 安装 Maven 在 IDEA 中使用 Maven 之前,需要先安装 Maven。在 Maven ...
使用Maven Archetype插件可以快速创建一个多模块项目模板。首先,创建一个父项目,然后在父项目的pom.xml中添加子模块的定义,最后在父项目目录下为每个子模块生成对应的目录结构和基本的pom.xml。 4. 依赖管理: ...
在IT行业中,Maven是一个广泛使用的项目管理工具,主要用于Java项目的构建、依赖管理和项目信息管理。本篇文章将深入探讨如何使用Maven构建Web项目,并详细解释如何将构建好的项目部署到Tomcat服务器。 首先,Maven...
【标题】"mavenWeb空项目"所涉及的知识点主要集中在Java编程语言和Maven构建工具上,这是一个基于Maven的、已经过单元测试的Web应用程序的基础框架。下面将详细介绍这两个核心领域的相关知识。 **一、Java编程语言*...
标题中的“普通的IDEA maven java项目demo(hello word)-1.8”指的是一个基于IntelliJ IDEA的Java项目,使用Maven构建系统,并且是初学者级别的Hello World示例。这个项目可能是为了教授Java编程语言的基础知识,...
总的来说,这个“maven java项目实例”涵盖了如何使用Maven进行Java项目的构建,特别是Profile的使用,以及可能存在的一个实用工具类`MemberUtil`的实现。通过深入理解和实践这些内容,开发者可以更好地掌握Maven在...
Maven 2 是一个广泛使用的Java项目管理工具,它极大地简化了构建、管理和部署Java应用程序的过程。Maven 使用一种标准化的方法来组织项目结构,并通过依赖管理和项目信息管理来自动化构建流程。这个工具的核心概念是...
Maven是一个项目管理和综合工具,它通过一个统一的配置文件(pom.xml)来管理项目的构建、报告和依赖关系。本项目是基于Idea与Maven创建的Web应用程序,旨在展示如何在Idea中设置和操作Maven项目。 【描述】:“第...
- **目的**:通过一个简单的示例项目来了解Maven的基本使用方法。 - **步骤**: - 下载示例项目。 - 创建项目。 - 构建项目。 - 分析POM文件。 2. **核心概念** - **Maven插件与目标**:插件提供了执行特定...
### Maven创建Java工程项目详解 Maven作为Java世界中广受欢迎的构建工具,其强大的功能不仅限于项目的构建,还涵盖了依赖管理、项目信息管理和构建生命周期等多个方面。通过Maven,开发者能够高效地创建、构建和...
在本文中,我们将深入探讨如何使用Spring MVC和Maven来构建一个Java项目。Spring MVC是Spring框架的一个模块,专门用于构建Web应用程序,而Maven则是一个项目管理工具,用于简化构建、依赖管理和项目文档的生成。 *...
maven教程,目录如下: Maven安装配置 Maven启用代理访问 Maven本地资源库 Maven中央存储库 如何从Maven远程存储库下载?...Eclipse创建一个Maven Web项目 在易百教程网看到的,觉得还不错,就做成了chm笔记本形式
在本文中,我们将详细介绍如何使用Maven来搭建一个gRPC Java项目,并提供一个简单的示例。gRPC是一个高性能、开源的通用RPC框架,它利用Protocol Buffers作为接口定义语言。Maven是Java项目管理和构建的工具,对于...
对于一个用户友好的词云生成器,通常会有一个简单的用户界面供用户上传文件、选择参数(如颜色、布局、字体大小等)并预览结果。这可能使用JavaFX或Swing构建,提供按钮、文本框和文件选择对话框等交互元素。 **7. ...