我在 Windows XP 上使用 maven3.03 和 Eclipse 3.5。我将旧的 Web 项目转换为 Maven 配置样式。
当我在eclipse中编译项目时,一切都会编译。
注意:类路径包含:Maven Dependencies 和 JDK(1.6_018)。
当我使用 mvn 从命令行编译时,我得到一些错误:
1.package com.sun.xml.internal.stream.buffer.stax 不存在。
2.package com.sun.xml.internal.stream.writers 不存在
3.找不到符号 - 符号:类 XMLDOMWriterImpl
4.package com.sun.xml.internal.messaging.saaj.util 不存在
5.package 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。我很惊讶错误是不同的。它是什么?