问题标签 [javaparser]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 使用 Javaparser 访问 Javadoc 返回 null
我正在使用 Javaparser (javaparser-core 2.0.0) 解析 Java 源文件以从 方法中获取 Javadoc 注释。
null
但是,当我打电话时,我总是得到MethodDeclaration.getJavaDoc()
。查看 的来源MethodDeclaration
,我可以明白为什么:
(似乎可以从 Javadoc 获得Node.getComment()
)
我的问题是:为什么方法 Javadoc 不可用MethodDeclaration.getJavaDoc()
?
java - 如何使用 Java Compiler Tree API (com.sun.source.util) 重构源代码
我目前正在分析Java源代码。我通过使用 Compiler Tree API 解析源代码来完成 AST 分析。但是我有一个问题,将新的 AST 节点(例如插入表达式或语句)添加到编译单元,以后可以由 Java 编译器编译。我没有找到任何方法或类可以做到这一点。
parsing - 不确定为什么在这些情况下需要这个 LOOKAHEAD
这是我的令牌表:
我的这段代码包含 2 个选择冲突。
为了消除选择冲突警告,我需要像这样添加2个LOOKAHEAD语句......
我理解为什么需要第一个 LOOKAHEAD(2),但我不知道为什么需要第二个 LOOKAHEAD(1)。有人可以解释一下吗?
同样对于这个例子......
为了消除选择冲突,我需要像这样添加 LOOKAHEADS ...
我不知道为什么这些 LOOKAHEADS 会删除警告。任何帮助理解将不胜感激。
java - JavaParser - 无法正确识别 ArrayList
我使用https://code.google.com/p/javaparser Java 解析器从文件中获取数据。问题是解析器无法识别 arraylist、hashmap、map 等。
当我在这样的文件中使用arraylist时;
没有任何错误。有用。
当我这样使用它时;
它给出以下错误
是 15, 2015 7:22:23 AM diagramcreator.DiagramCreator main SEVERE: null japa.parser.ParseException: Encountered ""<" "<"" at line 2, column 69. 期待:"(" ...
我该如何解决这个问题?有什么建议么?我认为问题可能是菱形括号,但我不知道如何解决这个问题。
java - 如何获得最终的包名?
我有代码
和
我有两个问题:
- 如何将语句转换为表达式?我要检查的是方法调用。我试图通过这种方式检查它们是否是不兼容的类型:
if(stmt instanceof MethodCallExp)
但出错了。我输入了我现在使用的代码。这是执行检查的一种方法吗? System.out.println("Scope: " + exp.getScope());
将显示对象/包/包+类名。但是如何获得它的类型呢?例如对于代码System.out.println("Hello world");
应该输出
类型:java.io.PrintStream
java - Javaparser向类添加新字段
我想为类List
中的每个现有字段添加一个类型的新字段。我还希望它用一个空的ArrayList<Long>
. 如何创建适当的FieldDeclaration
对象以添加到我已经提取BodyDeclaration
的类 ( ) 的列表中?TypeDeclaration
java - JavaParser - 获取类型化的 AST
我想从 JavaParser 或其他 Java 代码解析器中获取类型化的 AST。这意味着我将能够获取特定变量的类型或参数+方法的返回类型。我用谷歌搜索了很多关于 JavaParser 的这个特性,但没有找到任何东西,我认为这是因为 JavaParser 生成了无类型的 AST。所以,请告诉我如何才能得到这个。但是请不要说要解析所有代码并制作我自己的一组类型,我试过了,这很难,我认为这比制作我自己的 AST 解析器更难。
java - JAVA parser for asana json data "Error:JSONObject cannot be converted to JSONArray"
I am working on java parser that parse asana json data. Now I am executing request using curl and curl use cygwin tool(Used to execute UNIX commands on windows).
Now I am getting single project details in json format(that contain all tasks in projects) from which I am getting one task ID and use this task ID to get single task details. But when I am parse subrequest data(request to get single task detail). It gives me error "JSONObject cannot be converted into JSONArray".
error line is
JSONArray dataArray2= (JSONArray)jsonObject2.get("data");
Example Asana JSON Response many tasks
Example Asana single task detail
Example Java Code
java - 在 Java 中现有数据之间的文本文件中添加数据
我需要在类名或方法名之前添加这是一个类或这是文本/java文件中的一个方法(行号可通过japa获得)。
我已经尝试了所有可能的情况,尝试使用文件读取器/写入器编辑文本/Java 文件(但它总是在末尾附加,并且想要上面的类/方法名称),pmd,japa(可以读取但找不到编辑选项)和随机访问文件界面(也可以编辑,但它不附加而是覆盖字符)。
到目前为止没有任何帮助,有什么办法可以实现吗?
例如原始源代码:
后
java - 如何使用 javaparser 在 Java 文件中找到所有 for 循环?
我正在使用javaparser解析 Java 文件,我想找到所有出现的for
循环(forEach
& 正常for
循环)。到目前为止,这是我的方法,但它只发现了一些,而不是所有的事件。
例如,它似乎适用于这一行:
...但不是为了这个:
...也不是这个:
这是javaparser中的一个可能的错误,还是我只是以错误的方式使用它?