如何将maven.xml升级到pom.xml?

时间:2012-01-25 02:44:47

标签: java maven pom.xml heritrix

我正在使用Heritrix的1.14.4分支,我很遗憾暂时被困在那个分支中。我遇到的问题是,它的maven.xml依赖于Maven 1.1这是如此古老我甚至无法找到依赖关系来构建它。

Moreso,因为它是一个maven.xml而不是一个pom.xml,没有合理的旧版本或最近的IDE可以加载项目 - 我必须手动构建它来运行'maven'脚本。

我会自由地承认,当涉及到Java和maven时,我相当无知,但肯定有人会对如何升级到更新版本的Maven有一些指示。

帮助我欧比万!你是我唯一的希望!

5分钟后尴尬更新..

在浪费了3个小时之后,我偶然发现了答案here

  • 安装maven2
  • cd project_dir
  • mvn one:convert(自动将1.x转换为2.x)
  • mvn3应该向后兼容..所以我应该好好去!

几个小时后......现实开始......

升级到maven-2或maven-3引入了一个新的模块,这些模块都是从我的maven.xml中提升到pom.xml中的。此外,“项目”没有pom.xml,这似乎也有点障碍。

所以,如果我想以这种方式玩,我必须继续玩 - 升级我的模块,将所有内容格式化为好像是一个新项目。升级技术让我有点意思,但这需要一段时间我认为..接受Tim的快速和详细的回答,再次感谢。我在某种程度上意识到'海家伙让maven为我工作?'有点像要求某人修复你的makefile ..如果它被破坏了,它就被破坏了。 :d

1 个答案:

答案 0 :(得分:1)

嗯,有这样的官方guide,但这是一个快速的开始。

从最小的POM开始:

<project>
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.mycompany.app</groupId>
  <artifactId>my-app</artifactId>
  <version>1</version>
</project>

最简单(尽管不是绝对必要)的步骤是确保项目具有Maven 2 default directory structure

基本上只是:

src/main/java              - your java files, e.g. /com/mycompany/...
src/main/resources         - other dependencies (e.g. xml files)

然后,您应该能够将该空项目作为有效的Maven 2项目加载到IDE中。

但是,由于尚未指定依赖项,因此会出现错误。现在你有两个选择:

1)手动将依赖项添加到POM。 E.g:

<project>
...
<dependencies>
    <dependency>
      <groupId>commons-math</groupId>
      <artifactId>commons-math</artifactId>
      <version>1.2</version>
      <type>jar</type>
    </dependency>
</dependencies>
...
</project>

2)或使用IDE引入所需的依赖项。根据您的IDE,这可能会非常简单,因为它可以自动搜索Maven central以获得正确的库,您可以轻松地提取最新版本。例如,Netbeans将在代码行的左侧提供工具提示,其中缺少类定义,允许您在Maven中搜索依赖项。