问题标签 [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 解析方法或任何其他有效表达式
JavaParser是一个java源代码解析工具。我阅读了文档,但发现它只能解析完整 java 类的源代码,例如:
但我只想解析其中的一部分,例如方法声明:
怎么做或者有可能吗?如果没有,是否有任何其他工具可以做到这一点?
更新
实际上我想解析java中的任何有效表达式,所以我可以用JavaParser轻松做到这一点:
java - 使用 JavaParser 解析变量的正确方法是什么?
使用 JavaParser,我可以使用以下方法获取我的方法和字段的列表:
但我不知道如何获取我的变量列表。我只是想要一个来自 java 源的所有变量的列表,而不管范围如何。
java - 使用 JavaParser 在类中计算方法声明 + 方法调用
我正在尝试编写 rfc 指标(类的响应),它计算方法声明 + 方法调用。
方法声明工作正常,但我在使用 JavaParser API 计算方法调用时遇到了问题。
这是我的代码:
测试.java
该代码的结果:
实际上,该代码检查方法调用,但在我的情况下,我不希望它计算像 System.out.println 这样的库方法调用(toString())
,我希望它只计算toString()
。
如果您有更好的代码或其他 API 可以使用...欢迎任何帮助,在此先感谢您。
java - 谷歌 javaparser IfStmt 不计算结果
我正在使用 Google javaparser 解析 java 文件,当我尝试计算“If”语句时,似乎无法获得“else-if”语句的数量。
例如,我想解析以下代码:
我想获得圈复杂度,以便我需要计算“if”和“else-if”的数量。当我使用访问者模式时,我只能访问 API 中定义的“IfStmt”,代码如下:
没有办法获得“else-if”,但带有“IfStmt”的访问者模式将整个代码块视为一个“if”语句。所以,我希望数字是 4,但它是 2。
有人有什么想法吗?
javaparser - 在 Javaparser 中处理异常
由于令牌错误,我正在尝试处理 Javaparser 库产生的异常。我使用了以下代码。
但是,该异常从未被捕获,并且我从其他地方生成了一个不同的异常。我得到了这个例外:
线程“main”中的异常 japa.parser.TokenMgrError:第 1 行第 16 列的词法错误。遇到:“#”(35),之后:“”在 japa.parser.ASTParserTokenManager.getNextToken(ASTParserTokenManager.java:2247)在japa.parser.ASTParser.jj_ntk(ASTParser.java:9986) at japa.parser.ASTParser.ClassOrInterfaceBody(ASTParser.java:926) 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:94) 在 misc.CompileTest.main(CompileTest.java:45)
任何想法,如何处理异常?提前致谢
java - 如何使用javaparser在java文件中显示带有签名的方法列表
我需要使用 javaparser 显示方法列表以及 java 类的签名。
我知道如何显示没有签名但没有签名的方法列表。任何人都可以提供一些示例来获取方法和签名。
java - 霍尔斯特德科学指标
我正在halstead Metrics
使用java构建并且我正在使用javaparser
库,我对如何在java导入文件中找到所有java保留字感到困惑,这些文件将被解析以找到运算符(n1)?
java - 如何使用 javaparser 获取类级变量声明?
我只想获得类级别的变量声明。如何使用 javaparser 获取声明?
使用 javaparser 必须获取变量“浏览器”的详细信息,例如浏览器的类型是“关键字”
java - 如何获取java类的完全限定名
我有一个像下面这样的课程。
Keyword
是不同包中的一个类。我想在使用javaparserKeyword
解析类时获取类的完全限定名。Login
javaparser - 是否可以保留空格?
使用javaparser库:
有没有办法打印出编译单元并保留空格?
我在 compilerUnit 上尝试了 toString() 方法,但这会丢弃换行符。
看到每个 ASTNode 如何存储行号和列号信息,我只是错过了正确的方法吗?