Использование Eclipse средства Jdt, вы можете пройти по AST Явы фрагменты кода следующим образом:Невозможно включить Eclispe JDT codeAssist объектов вне Plug-in
ASTParser ASTparser = ASTParser.newParser(AST.JLS3);
ASTparser.setSource("package x;class X{}".toCharArray());
ASTparser.createAST(null).accept(...);
Но при попытке выполнить код полный выбор & его код кажется, что я должен сделать это в виде плагина в применении, так как я должен писать коды, как
IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(somePath));
ICodeAssist i = JavaCore.createCompilationUnitFrom(f);
i.codeComplete/codeSelect(...)
есть в любом случае, что я могу, наконец, получить автономное приложение Java, которое включает в себя код JDT полный/выбор объектов ?
thx много! ши Куй
Я заметил, что с помощью org.eclipse.jdt.internal.codeassist.complete.CompletionParser я могу разобрать фрагмент кода, а также.
CompletionParser parser =new CompletionParser(new ProblemReporter(
DefaultErrorHandlingPolicies.proceedWithAllProblems(),
new CompilerOptions(null),
new DefaultProblemFactory(Locale.getDefault())),
false);
org.eclipse.jdt.internal.compiler.batch.CompilationUnit sourceUnit =
new org.eclipse.jdt.internal.compiler.batch.CompilationUnit(
"class T{f(){new T().=1;} \nint j;}".toCharArray(), "testName", null);
CompilationResult compilationResult = new CompilationResult(sourceUnit, 0, 0, 0);
CompilationUnitDeclaration unit = parser.dietParse(sourceUnit, compilationResult, 25);
Но у меня есть 2 вопроса: 1. Как retrive вспомогательную информацию? 2. Как я могу указать путь к контуру или исходный путь для компилятора для поиска типа/метода/информации о поле?
Я вижу. Спасибо за Вашу информацию –