我已经在Rascal站点上找到了文档:http://tutor.rascal-mpl.org/Rascal/Libraries/lang/java/m3/AST/createAstFromFile/createAstFromFile.html,但老实说,我不知道如何应用它。有人能给我举个例子,说明如何在代码中应用这个方法吗?我尝试过一些东西,但要么是缺少修饰符"java“,要么是未声明的变量错误,这对我一点帮助都没有。
我现在被困在:
ast = createAstFromFile(l,true,"1.8");另外两个问题:“宣言”在此补充了什么?在这个上下文中,collectBindings布尔值意味着什么?(文件与Rascal的这一部分不太清楚)
其他信息:
rascal>import lang::java::jdt::m3::Core;
ok
rascal>createM3FromEclipseFile(|project://smallsql/src/smallsql/tools/CommandLine.java|);
|plugin://rascal_eclipse/src/org/rascalmpl/eclipse/library/lang/java/jdt/Project.rsc|(276,127,<11,0>,<12,47>): IO("**smallsql does not exist**")
at somewhere plugin://rascal_eclipse/src/org/rascalmpl/eclipse/library/lang/java/jdt/Project.rsc|(276,127,<11,0>,<12,47>))
at classPathForProject(|plugin://rascal_eclipse/src/org/rascalmpl/eclipse/library/lang/java/jdt/m3/Core.rsc|(1776,2,<54,55>,<54,57>))
at $root$(|prompt:///|(0,82,<1,0>,<1,82>))
rascal>projects();
set[loc]: {
|project://smallsql|,
|project://MetricsTest|,
|project://Analysis|,
|project://hsqldb|
}发布于 2016-11-04 16:12:43
我也有过类似的运气,但我找到了以下解决办法:
import lang::java::jdt::m3::AST;
createAstsFromEclipseProject(|project://myProject|,true)这将给你所有的项目,你可以选择你需要从其中之一。
问题在于编译器参数(类路径等)。当给定一个项目时,该函数可以从项目配置中派生元信息,从而使其正常工作。
Declaration只是声明某事的一般类型的东西。https://stackoverflow.com/questions/40348842
复制相似问题