将已有的Eclipse项目转化为Maven项目

将已有的Eclipse项目转化为Maven项目

我们之前在Eclipse IDE完成的Java命令行项目、Java Web项目也使用了构建工具——Ant,它帮助我们编译、运行Java源代码(无需我们自己调用javacjava等命令来进行重复、繁琐的构建任务)。以Java项目为例,它的目录结构一般是这样的:

.
├── bin
│   └── com
│       └── tianmaying
│           └── Test.class
└── src
    └── com
        └── tianmaying
            └── Test.java

Eclipse/Ant默认将项目目录下的src文件夹作为项目源代码文件夹,并编译其中的源代码,最终的输出结果(.class文件)放在了bin目录下。运行Test类中的main函数也是使用bin目录下对应的字节码文件。

使用Maven来管理项目,本质上是将项目的目录结构改为Maven的约定方式(例如src/main/java目录存放Java源代码文件)。

手动转换

首先,在项目根目录下创建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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.tianmaying</groupId>
  <artifactId>to-maven-project</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <name>ToMavenProject</name>
  <build>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.5.1</version>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>

接下来创建src/main/java文件夹,并将所有源代码从原先的src目录下移动过来(保持目录结构不变):

.
├── pom.xml
└── src
    └── main
        └── java
            └── com
                └── tianmaying
                    └── Test.java

接下来运行mvn clean install应该可以看到成功的消息,但是在Eclipse中,刷新项目后你可能会看到类似这样的错误消息:

Clipboard Image.png

这是因为Eclipse仍然认为当前项目是使用Ant进行构建的,为此,我们需要告知Eclipse我们使用的是Maven!

鼠标右键单击项目,然后选择【Configure】->【Convert to Maven Projects…】,此时项目图标的左上角会出现一个M字样

但是此时Eclipse的配置中,项目的源代码文件仍然是src

Clipboard Image.png

点击【Remove】按钮将其移除,并【Add Folder】将src/main/java添加即可。当然在Remove后我们也可以不添加,而是保存退出,接下来右键点击项目,【Maven】->【Update Project】,让Eclipse自动判断项目类型并设置正确的源代码目录。

Eclipse自动配置

鼠标右键单击项目,然后选择【Configure】->【Convert to Maven Projects…】,此时项目图标的左上角会出现一个M字样

如果我们不创建pom.xml,直接让Eclipse来帮助我们创建也是没有问题的,在上述步骤完成后(请自行填入Maven所需的groupIdartifactIdname等信息)后,Eclipse会自动创建一个pom.xml,内容和我们手动创建的几乎没有区别,唯一的不同在于它发现我们的源代码在src文件夹下,而手动指定了源代码目录的位置:

<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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.tianmaying</groupId>
  <artifactId>to-maven-project</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <name>ToMavenProject</name>
  <build>
    <sourceDirectory>src</sourceDirectory>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.5.1</version>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>

这样的好处在于我们不需要修改任何配置,但是我们仍然推荐将代码结构修改为Maven的默认约定(src/main/java),如果这样做,不要忘记删除这一行<sourceDirectory>src</sourceDirectory>

版权声明
  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值