【发布时间】:2011-09-27 15:50:56
【问题描述】:
我在 Windows XP 上使用 maven3.03 和 Eclipse 3.5。我将旧的 Web 项目转换为 Maven 配置样式。
当我在 Eclipse 中编译项目时,一切都会编译。
注意:类路径包含:Maven 依赖项和 JDK(1.6_018)。
当我使用 mvn 从命令行编译时,我得到了一些错误:
1.包com.sun.xml.internal.stream.buffer.stax不存在。
2. com.sun.xml.internal.stream.writers 包不存在
3.找不到符号 - 符号:类 XMLDOMWriterImpl
4.package com.sun.xml.internal.messaging.saaj.util 不存在
5.包com.sun.xml.internal.bind.v2.runtime.unmarshaller不存在
6.找不到符号 - 符号:类 NamespaceContexHelper
7.找不到符号符号:类ByteOutputStream
我可以看到这个有太阳罐的东西。但我就是不明白为什么eclipse可以而命令行不行。
编辑:我在上面的列表中没有提到的错误之一是:
[ERROR]<path>\EventsViewer.java:[54,69] inconvertible types found: <br>java.util.SortedMap<java.util.Date,java.util.List<com.myClass>>
required: java.util.Map<? extends java.util.Date,? extends java.util.List<com.myOtherClass>>
当我在 Eclipse 中看到同一行时,我收到警告:
Type safety: Unchecked cast from SortedMap<Date,List<myClass>> to Map<? extends Date,? extends
List<myOtherClass>>
在 Eclipse 中我得到警告,在 maven 中我得到错误。我确实检查了 org.eclipse.jdt.core.prefs 并看到设置是 org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning。
更新:
我读到了上面的一些错误。 “问题”是在 Eclipse 中它显示为未使用的导入。 Stangly maven 将此报告为错误。删除此未使用的导入后,错误消失了。但是问题 3 和 7 仍然出现
结论:我猜这些警告在 javac 中变成了错误。因为我不使用任何 supressWarnings。我很惊讶错误是不同的。
这是什么?
【问题讨论】:
-
很可能您的
JAVA_HOME没有在 Maven 环境中设置。 -
您在哪些平台上运行 Maven 和 Eclipse?
标签: eclipse maven jar sun pom.xml