【发布时间】:2014-11-05 11:16:31
【问题描述】:
今天我尝试通过Maven使用site命令生成报告,在编译阶段遇到了问题。
错误:
ParseException in /Users/rajesh/Documents/workspace/mobileads/mobileads-core/src/main/java/com/nimbuzz/mobileads/util/AdRequestAnalyticsLogger.java
Last useful checkpoint: "com.nimbuzz.mobileads.util.AdRequestAnalyticsLogger.logAdOk(AdRequest,String)"
Encountered " ">" "> "" at line 32, column 55.
Was expecting one of:
"boolean" ...
"byte" ...
"char" ...
"double" ...
"float" ...
"int" ...
"long" ...
"short" ...
<IDENTIFIER> ...
"?" ...
"boolean" ...
"char" ...
"byte" ...
"short" ...
"int" ...
"long" ...
"float" ...
"double" ...
<IDENTIFIER> ...
"?" ...
"?" ...
"?" ...
"?" ...
令我惊讶的是,当我运行 compile 或 test 命令时,相同的文件可以正确编译。
现在我有两个疑问
1)。当我转到 AdRequestAnalyticsLogger.java 时,它给了我这个问题,我可以看到代码为
final List<String> toBeLogged = new ArrayList<>(ad.asList());
请注意,ArrayList 之后的倾斜中没有字符串。
现在的疑问是,java是否接受“ArrayList”而不是“ArrayList”。如果假设是“ArrayList”,那么为什么在执行“mvn site”时它正在编译但不起作用。
2)。 “mvn compile”/“mvn test”/“mvn site”有什么区别
问候, 拉杰什
【问题讨论】:
-
你正在编译到 java 7 吗?因为您的代码中有菱形。 mvn site 编译后执行以下目标:测试包验证安装。所以问题可能在于其中一个目标。
mvn clean install应该给你同样的错误。