首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JavaParser - ArrayList没有正确识别

JavaParser - ArrayList没有正确识别
EN

Stack Overflow用户
提问于 2015-04-15 04:29:08
回答 1查看 308关注 0票数 0

我使用https://code.google.com/p/javaparser Java解析器从文件中获取数据。问题是解析器不能识别数组、哈希图、地图等。

当我像这样在文件中使用数组时;

代码语言:javascript
复制
public static ArrayList<ClassType> classList;

没有任何错误。它起作用了。

当我像这样使用它时;

代码语言:javascript
复制
public static ArrayList<ClassType> classList = new ArrayList<>();

给出了以下误差

是15,2015 7:22:23上午7点22分diagramcreator.DiagramCreator主要严重:空japa.parser.ParseException:遇到"<“在第2行,第69列。期待:"(“.

代码语言:javascript
复制
at japa.parser.ASTParser.generateParseException(ASTParser.java:10074)
at japa.parser.ASTParser.jj_consume_token(ASTParser.java:9920)
at japa.parser.ASTParser.Arguments(ASTParser.java:3097)
at japa.parser.ASTParser.AllocationExpression(ASTParser.java:3226)
at japa.parser.ASTParser.PrimaryPrefix(ASTParser.java:2885)
at japa.parser.ASTParser.PrimaryExpression(ASTParser.java:2789)
at japa.parser.ASTParser.PostfixExpression(ASTParser.java:2715)
at japa.parser.ASTParser.UnaryExpressionNotPlusMinus(ASTParser.java:2695)
at japa.parser.ASTParser.UnaryExpression(ASTParser.java:2589)
at japa.parser.ASTParser.MultiplicativeExpression(ASTParser.java:2479)
at japa.parser.ASTParser.AdditiveExpression(ASTParser.java:2439)
at japa.parser.ASTParser.ShiftExpression(ASTParser.java:2399)
at japa.parser.ASTParser.RelationalExpression(ASTParser.java:2349)
at japa.parser.ASTParser.InstanceOfExpression(ASTParser.java:2326)
at japa.parser.ASTParser.EqualityExpression(ASTParser.java:2287)
at japa.parser.ASTParser.AndExpression(ASTParser.java:2261)
at japa.parser.ASTParser.ExclusiveOrExpression(ASTParser.java:2236)
at japa.parser.ASTParser.InclusiveOrExpression(ASTParser.java:2211)
at japa.parser.ASTParser.ConditionalAndExpression(ASTParser.java:2186)
at japa.parser.ASTParser.ConditionalOrExpression(ASTParser.java:2161)
at japa.parser.ASTParser.ConditionalExpression(ASTParser.java:2137)
at japa.parser.ASTParser.Expression(ASTParser.java:2053)
at japa.parser.ASTParser.VariableInitializer(ASTParser.java:1191)
at japa.parser.ASTParser.VariableDeclarator(ASTParser.java:1113)
at japa.parser.ASTParser.FieldDeclaration(ASTParser.java:1076)
at japa.parser.ASTParser.ClassOrInterfaceBodyDeclaration(ASTParser.java:1028)
at japa.parser.ASTParser.ClassOrInterfaceBody(ASTParser.java:961)
at japa.parser.ASTParser.ClassOrInterfaceDeclaration(ASTParser.java:604)
at japa.parser.ASTParser.TypeDeclaration(ASTParser.java:524)
at japa.parser.ASTParser.CompilationUnit(ASTParser.java:269)
at japa.parser.JavaParser.parse(JavaParser.java:81)
at japa.parser.JavaParser.parse(JavaParser.java:109)
at japa.parser.JavaParser.parse(JavaParser.java:124)
at diagramcreator.DiagramCreator.main(DiagramCreator.java:65)

我怎么才能解决这个问题?有什么建议吗?我认为问题可能是钻石支架,但我不知道如何解决这个问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-15 04:33:41

您正在链接到这个项目的一个非常旧的版本,该版本不再是活动的,并且只支持Java5。您在new ArrayList<>()中使用的菱形操作符(new ArrayList<>())仅在Java 7中引入,因此解析器无法识别它。

要解决这个问题,请从JavaParser下载一个最新版本,支持这里 8的版本。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29641608

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档