Maven+Tycho POM-less Unresolved dependencies for Eclipse XMLEditor Example Project

Maven+Tycho POM-less Unresolved dependencies for Eclipse XMLEditor Example Project

我被这个难住了将近一个星期。我正在尝试为我公司的一个 DSL 创建一个 eclipse 编辑器插件。

我按照 this tutorial 设置了插件、功能和更新站点。清理并验证是否按预期工作,因为那里确实没有任何东西!我确实收到关于插件必须包含至少一个扩展或扩展点的警告。

然后我使用 Eclipse 中的扩展向导为基本 XML 编辑器添加一个扩展:

这增加了 4 个依赖项:

现在,当我 运行 mvn clean verify 时,我收到有关无法解析依赖项的错误消息:

[INFO] Scanning for projects...
C:\ui\bundles\com.mycompany.example.ui.editors.ontology\.polyglot.build.properties
C:\ui\features\com.mycompany.example.ui.feature\.polyglot.build.properties
[INFO] Computing target platform for MavenProject: com.mycompany.example.ui:com.mycompany.example.ui.editors.ontology:1.0.0-SNAPSHOT @ C:\ui\bundles\com.mycompany.example.ui.editors.ontology\.polyglot.build.properties
[INFO] Resolving dependencies of MavenProject: com.mycompany.example.ui:com.mycompany.example.ui.editors.ontology:1.0.0-SNAPSHOT @ C:\ui\bundles\com.mycompany.example.ui.editors.ontology\.polyglot.build.properties
[INFO] {osgi.os=win32, osgi.ws=win32, org.eclipse.update.install.features=true, osgi.arch=x86_64}
[ERROR] Cannot resolve project dependencies:
[ERROR]   Software being installed: com.mycompany.example.ui.editors.ontology 1.0.0.qualifier
[ERROR]   Missing requirement: com.mycompany.example.ui.editors.ontology 1.0.0.qualifier requires 'osgi.bundle; org.eclipse.core.runtime 0.0.0' but it could not be found
[ERROR] 
[ERROR] See http://wiki.eclipse.org/Tycho/Dependency_Resolution_Troubleshooting for help.
[ERROR] Cannot resolve dependencies of MavenProject: com.mycompany.example.ui:com.mycompany.example.ui.editors.ontology:1.0.0-SNAPSHOT @ C:\ui\bundles\com.mycompany.example.ui.editors.ontology\.polyglot.build.properties: See log for details -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MavenExecutionException

在父项目 POM 中,我有这样的 eclipse 发布存储库:

<properties>
    <eclipse-repo.url>https://download.eclipse.org/releases/2019-06/</eclipse-repo.url>
</properties>

<repositories>
    <repository>
        <id>eclipse-release</id>
        <url>${eclipse-repo.url}</url>
        <layout>p2</layout>
    </repository>
</repositories>

如有任何帮助,我们将不胜感激!我也知道 Xtext,但我们已经有了一堆 parsing/modeling/validation 基础设施,我希望将其用作编辑器的 backbone,而不是为了获得编辑器而在 xtext 中重新创建 DLS然后让两个语法保持同步。

Maven 3.6.1 (https://issues.apache.org/jira/browse/MNG-6642) 中还有另一个错误会阻止

<repository>
    <id>eclipse-release</id>
    <url>${eclipse-repo.url}</url>
    <layout>p2</layout>
</repository>

从工作中。因此,请使用 3.6.0(如果您找到其他错误的解决方法,则使用 3.6.2)

或者你使用一个真正的目标平台而不是那个 repo 列表 https://wiki.eclipse.org/Tycho/Target_Platform#Target_files