使用MyEclipse构建MAVEN项目 - 我的漫漫程序之旅 - BlogJava

时间:2023-03-09 04:09:18
使用MyEclipse构建MAVEN项目 - 我的漫漫程序之旅 - BlogJava

body
{
font-family: Microsoft YaHei UI,"Microsoft YaHei", Georgia,Helvetica,Arial,sans-serif,宋体, PMingLiU,serif;
font-size: 10.5pt;
line-height: 1.5;
}
html, body
{

}
h1 {
font-size:1.5em;
font-weight:bold;
}
h2 {
font-size:1.4em;
font-weight:bold;
}
h3 {
font-size:1.3em;
font-weight:bold;
}
h4 {
font-size:1.2em;
font-weight:bold;
}
h5 {
font-size:1.1em;
font-weight:bold;
}
h6 {
font-size:1.0em;
font-weight:bold;
}
img {
border:0;
max-width: 100%;
height: auto !important;
}
blockquote {
margin-top:0px;
margin-bottom:0px;
}
table {
border-collapse:collapse;
border:1px solid #bbbbbb;
}
td {
border-collapse:collapse;
border:1px solid #bbbbbb;
}

使用MyEclipse构建MAVEN项目 - 我的漫漫程序之旅 - BlogJava这里用的是MyEclpise的自带的MAVEN插件。

Maven最好配置成你自己安装的那个,MyEclipse自带会有些许Bug。
使用MyEclipse构建MAVEN项目 - 我的漫漫程序之旅 - BlogJava

用nexus代理Maven的*仓库,setting.xml的配置文件修改内容如下:



Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--><mirrors>

     <mirror>

          <id>nexus</id>

          <mirrorOf>*</mirrorOf>

          <name>Nexus Mirror</name>

          <url>http://localhost:8081/nexus/content/groups/public</url>

     </mirror>

  </mirrors>

  

  <profiles>

     <profile>

      <id>nexus</id>

      <repositories>

        <repository>

          <id>central</id>

          <url>http://central</url>

          <releases><enabled>true</enabled></releases>

          <snapshots><enabled>true</enabled></snapshots>

        </repository>

      </repositories>

     <pluginRepositories>

        <pluginRepository>

          <id>central</id>

          <url>http://central</url>

          <releases><enabled>true</enabled></releases>

          <snapshots><enabled>true</enabled></snapshots>

        </pluginRepository>

      </pluginRepositories>

    </profile>

  </profiles>

  <activeProfiles>

    <activeProfile>nexus</activeProfile>

  </activeProfiles>

http://localhost:8081/nexus/content/groups/public 是仓库组的地址。

打下MyEclipse新建工程的界面,选择Maven下的Maven Project,打开如下图的向导:
使用MyEclipse构建MAVEN项目 - 我的漫漫程序之旅 - BlogJava

这里我们要选中create a simple project。

点击下一步,填写GAV相关内容。
使用MyEclipse构建MAVEN项目 - 我的漫漫程序之旅 - BlogJava

点击完成后,我们就已经成功创建了一个Maven project了。

工程的默认目录结构如下:


使用MyEclipse构建MAVEN项目 - 我的漫漫程序之旅 - BlogJava
所有的Java源文件都要写在src/main/java目录下,所有的测试类都要写在src/test/java下面,这是Maven的默认值。
此时,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.test</groupId>
  <artifactId>test</artifactId>
  <version>0.0.1-SNAPSHOT</version>
</project>

这是最精简的pom.xml了。
这时我们加入junit的支持,新建一个测试类。
在项目上右键Maven-Add Dependency,显示如下界面:
使用MyEclipse构建MAVEN项目 - 我的漫漫程序之旅 - BlogJava
输入junit加入测试支持类库。
在src/test/java下新建一个测试类如下:

package com;
import org.junit.Test;
public class TestRun
{
@Test
public void testA()
{
System.out.println("test a method ");
}
@Test
public void testB()
{
System.out.println("test b method ");
}
}

右键Run As ----- Maven test,进行测试,显示结果如下:


[INFO] Scanning for projects使用MyEclipse构建MAVEN项目 - 我的漫漫程序之旅 - BlogJava
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building test 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-resources-plugin:2.5:resources (default-resources) @ test ---
[debug] execute contextualize
[WARNING] Using platform encoding (GBK actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 0 resource
[INFO] 
[INFO] --- maven-compiler-plugin:2.3.2:compile (default-compile) @ test ---
[INFO] Nothing to compile - all classes are up to date
[INFO] 
[INFO] --- maven-resources-plugin:2.5:testResources (default-testResources) @ test ---
[debug] execute contextualize
[WARNING] Using platform encoding (GBK actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 0 resource
[INFO] 
[INFO] --- maven-compiler-plugin:2.3.2:testCompile (default-testCompile) @ test ---
[INFO] Nothing to compile - all classes are up to date
[INFO] 
[INFO] --- maven-surefire-plugin:2.10:test (default-test) @ test ---
[INFO] Surefire report directory: D:\workspace\test\target\surefire-reports

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running com.TestRun
test a method 
test b method 
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.071 sec

Results :

Tests run: 2, Failures: 0, Errors: 0, Skipped: 0

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.847s
[INFO] Finished at: Tue Sep 11 14:20:59 CST 2012
[INFO] Final Memory: 3M/6M
[INFO] ------------------------------------------------------------------------

ok,一个基本的maven项目已经构建完成。我们还可以将现存的java项目利用myclipse方便的转换成maven project,此部分内容我们在下一节里讨论。