我用Xtext 2.9.1創建了編輯器,現在我想讓它獨立於JDT。我遵循本指南https://eclipse.org/Xtext/documentation/307_special_languages.htmlXtext項目JDT獨立
但它似乎沒有工作。這是我的ErrmsgUiModule.xtend
@FinalFieldsConstructor
class ErrmsgUiModule extends AbstractErrmsgUiModule {
override configure(Binder binder) {
super.configure(binder);
binder.bind(DefaultHighlightingConfiguration).to(ErrMsgHighlightingConfiguration);
binder.bind(DefaultSemanticHighlightingCalculator).to(ErrorSemanticHighlightingCalculator);
}
override bindIResourceForEditorInputFactory() {
return ResourceForIEditorInputFactory
}
override bindIResourceSetProvider() {
return SimpleResourceSetProvider
}
override provideIAllContainersState() {
return Access.getWorkspaceProjectsState()
}
}
我檢查每一個覆蓋方法與調試器和所有3種方法被調用。我沒有創建自己的項目嚮導,所以這應該足夠了。 但插件installating Java項目嚮導可用後仍...
/編輯: 提供更多的信息,這是項目的mwe2文件
module com.xxx.lang.errmsg.GenerateErrmsg
import org.eclipse.xtext.xtext.generator.*
import org.eclipse.xtext.xtext.generator.model.project.*
import org.eclipse.xtext.ui.generator.*
var rootPath = ".."
Workflow {
component = XtextGenerator {
configuration = {
project = StandardProjectConfig {
baseName = "com.xxx.lang.errmsg"
rootPath = rootPath
runtimeTest = {
enabled = true
}
eclipsePlugin = {
enabled = true
}
eclipsePluginTest = {
enabled = true
}
createEclipseMetaData = true
}
code = {
encoding = "windows-1250"
fileHeader = "/*\n * generated by Xtext \${version}\n */"
}
}
language = StandardLanguage {
name = "com.xxx.lang.errmsg.Errmsg"
fileExtensions = "msg"
fragment = formatting.Formatter2Fragment2 auto-inject {}
serializer = {
generateStub = false
}
validator = {
// composedCheck = "org.eclipse.xtext.validation.NamesAreUniqueValidator"
}
}
}
}
,這是名單來自plugin.xml的各種項目的依賴項:
項目com.xxx.lang.errmsg
org.eclipse.xtext,
org.eclipse.xtext.xbase,
org.eclipse.equinox.common;bundle-version="3.5.0",
org.eclipse.emf.ecore,
org.eclipse.xtext.xbase.lib,
org.antlr.runtime,
org.eclipse.xtext.util,
org.eclipse.xtend.lib,
org.eclipse.emf.common,
org.objectweb.asm;bundle-version="[5.0.1,6.0.0)";resolution:=optional,
org.eclipse.xtext.ui
項目com.xxx.lang.errmsg.ui
com.xxx.lang.errmsg,
com.xxx.lang.errmsg.ide,
org.eclipse.xtext.ui,
org.eclipse.xtext.ui.shared,
org.eclipse.xtext.ui.codetemplates.ui,
org.eclipse.ui.editors;bundle-version="3.5.0",
org.eclipse.ui.ide;bundle-version="3.5.0",
org.eclipse.ui,
org.eclipse.compare,
org.eclipse.xtext.builder,
org.eclipse.xtend.lib;resolution:=optional,
org.eclipse.xtext.xbase.lib,
org.eclipse.xtext.xbase.ui
/EDIT2:根據這一話題https://bugs.eclipse.org/bugs/show_bug.cgi?id=336217,我也試圖禁用所有org.eclipse.jdt *運行配置中的插件。這就是我得到的http://pastebin.com/Wi0gzceM
首先,您需要確保您沒有在Eclipse中安裝JDT。它是您正在構建的RCP應用程序還是僅僅是一個插件? –
我爲C/C++下載了乾淨的Eclipse Neon。我首先嚐試了沒有我的插件(新項目中沒有可用的Java項目嚮導),然後我安裝了插件並出現了Java Project Wizard。它是一個基於Xtext的編輯器。 (語法高亮,一些驗證,快速修復,格式化)。 – Smarty77
問題已編輯。我試圖提供更多信息來解決此問題。 – Smarty77