我想在eclipse中使用javaparser和我的插件。我可以使用/导入除一个之外的所有JavaParser-Core类。JavaParser类导致了错误。我该如何解决这个问题呢?
这是控制台输出;
java.lang.ClassNotFoundException: com.github.javaparser.JavaParser cannot be found by com.myplugin_1.0.0.qualifier
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.
代码在这里,
class Bar {
private int a;
void aMethod() {
while (true) {
String a = "0";
a = a + "1";
}
}
}
我想得到真正的a类型。我试着使用下面的代码,
public class GetTypeOfReference {
private static final String FILE_PATH = "src\\com\\test\\Bar.java
我试图使用Javaparser对java文件中所有对自定义方法的调用进行注释。我的第一种方法是使用ModifierVisitor:
ModifierVisitor<Object> visitante = new ModifierVisitor<Object>() {
@Override
public Visitable visit(MethodCallExpr n, Object arg) {
if (!"MYMETHOD".equalsIgnoreCase(n.getNa
我不确定我是否在标题中很好地描述了这个问题,但这里是背景:我想解析一个java源代码,比如TestClassOne.java。
TestClassOne使用另一个声明为实例变量的类"TestClassTwo“。现在,TestClassTwo有一个声明为实例变量的类TestClassThree。
所以现在,当我的目标类-TestClassOne通过TestClassTwo获取TestClassThree的引用时,问题就出现了,因此下面的方法test():
public class TestClassOne {
private TestClassTwo testTw
我想用java来解析java代码。
问题是,当我将java代码传递给解析方法时,它不会将其视为string.How。我转义要解析的代码
public class JavaParser {
private int noOfLines;
public void parse(String javaCode){
String[] lines = javaCode.split("[\r\n]+");
for(String line : lines)
System.out.println(line);
}
我正在试图评论一个微粒声明。
我的第一种方法是在case语句是一个‘表达式语句’和表达式是一个特定的‘方法调用表达式’时返回一个注释。
new ModifierVisitor<Object>() {
public Visitable visit(ExpressionStmt expStmt, Object arg) {
Expression exp = expStmt.getExpression();
if (exp.isMethodCallExpr()) {
// My other logic goes here
我正在使用RSyntaxtextarea在我的swing应用程序中编写JavaScript代码,并使用JavaScriptLanguageSupport.获得自动建议
我被这个问题堵住了:
我想将这个变量添加到解析器中:
var person = {
firstName: "John",
lastName : "Doe",
id : 5566,
};
因此,在我的textPane上,我可以写:“person。”并将firstName、lasName和id作为自动提示,如下所示:
My textPane:
RSyntaxTextArea
我想使用java解析器解析check()方法。使用getStatements()方法在MethodDeclaration中可以得到该方法。但是我想遍历方法中的代码。有没有办法这么做。我需要计算这个方法中返回语句的数量。
final JavaParser javaParser = new JavaParser();
final CompilationUnit compilationUnit = pr.getResult().get();
final TypeDeclaration resourceClass = compilationUnit.getTypes().get(0);
Method
在另一篇关于JavaParser的帖子中,您写道:“它不应该有任何依赖”。但是JavaParser依赖于一个特殊的ParseException:
在JavaParser,line 205: throw new ParseException(ioe.getMessage())中
构造函数ParseException(String)是未定义的-添加参数来匹配ParseException(String,int),例如java.text.ParseException (和其他三个)有一个int参数errorOffset。
在line 125 (and 8 more lines): new Ins
我可以用javaparser解析泛型方法吗?如果可能的话,怎么做?例如,这是我的方法:
public static < E > void printArray( E[] inputArray )
{
// Display array elements
for ( E element : inputArray ){
System.out.printf( "%s ", element );
}
System.out.println(
我刚开始使用antlr,我使用的是4.2。很容易猜到,这在本质上就像antlr3一样。因此,我遵循了问题的公认答案。(但我没有使用Exp,而是替换了Java,这意味着我想解析Java)一切都很好,直到我想编译ANTLRDemo.java示例。
当我编译它时,我会得到4个错误:
ANTLRStringStream in = new ANTLRStringStream("some random text");
JavaLexer lexer = new JavaLexer(in);
第一个错误:类JavaLexer中的构造函数JavaLexer不能应用于给定类型
我使用解析java源代码。
我尝试了很多方法来解析内部类;如下所示:
class A {
int x;
public void method2() {...}
class B {
int number;
public void methods() {...}
}
}
我试图解析B类及其变量和方法,但失败了。
有什么例子说明如何得到B类吗?
我可以解析A类方法名称和内容或变量内容,如下所示:
CompilationUnit cu = JavaParser.parse(in);
Class
我从ANTLR4文档站点获取了一个源代码。
JavaLexer lexer = new JavaLexer(input);
CommonTokenStream tokens = new CommonTokenStream(lexer);
JavaParser parser = new JavaParser(tokens);
JavaParser.CompilationUnitContext tree = parser.compilationUnit();// parse a compilationUnit
但是,新的CommonTokenStream是有问题的。
我正在编写一个基于JavaParser的库,使用Javasymbol solver来解析源文件中的类名。我正在尝试获取类和方法的注释的合格类名,但目前我无法获得它们。
我当前的代码是:
final CombinedTypeSolver combinedTypeSolver = new CombinedTypeSolver();
combinedTypeSolver.add(new ReflectionTypeSolver());
combinedTypeSolver.add(new JarTypeSolver(JUNIT_PATH));
final JavaPa
Introduction
我的应用程序使用方法链接实例化一个对象,以便生成并配置它,如下所示:
var car = new Car("Ferrari").Doors(2).OtherProperties(x = x.Color("Red"));
问题
我有一个在运行时动态生成这个对象的需求--配置所需的链式方法将在运行时确定,因此所有东西都必须动态地组装。我过去曾使用反射来创建简单的对象,比如new Car("Ferrari", 2, "Red") --我对此很满意--但是从来没有用包含lambda表达式的链式方法作为参数--这两
如何使用JavaParser获取类中所有包含行号的静态最终声明信息。
示例
public class demo {
private static final int x;
private static final int y;
private static final int z;
// some code
}
输出为
第1行的私有静态最终整数类型变量x第2行的私有静态最终整数类型变量y第3行的私有静态最终整数类型变量z