首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >让Tycho从旧风格的Eclipse更新站点解决依赖关系

让Tycho从旧风格的Eclipse更新站点解决依赖关系
EN

Stack Overflow用户
提问于 2012-10-07 19:01:02
回答 2查看 894关注 0票数 1

我正在尝试构建一个依赖于org.apache.uima.runtime的插件,它是托管在UIMA Eclipse更新站点上的UIMA Eclipse插件的一部分。这个更新站点是一个旧式(预p2)更新站点,所以我知道Tycho不会解决那些依赖关系。因此,我正在尝试创建update站点的本地副本,将其升级到p2,然后从那里获取依赖项。以下是我尝试过的:

代码语言:javascript
复制
$ svn co http://svn.apache.org/repos/asf/uima/uimaj/trunk/uimaj-eclipse-update-site/
...
Checked out revision 1395335.

$ java -jar /.../eclipse/plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar \
  -application org.eclipse.equinox.p2.publisher.UpdateSitePublisher \
  -metadataRepository file:/.../uimaj-eclipse-update-site \
  -artifactRepository file:/.../uimaj-eclipse-update-site \
  -source /.../uimaj-eclipse-update-site
Generating metadata for ..
Generation completed with success [0 seconds].

如果我查看uimaj-eclipse-update-site目录,现在我看到了一个artifacts.xml和一个content.xml,所以这似乎是正确的。我还用p2存储库浏览器检查了它,没有什么显示为“部分”,我可以看到一个org.apache.uima.runtime.feature.jar 2.4.0和一个org.apache.uima.runtime.feature.group 2.4.0

我现在将这个本地站点添加到我的Eclipse的pom.xml中:

代码语言:javascript
复制
<repository>
    <id>uima</id>
    <layout>p2</layout>
    <url>file:/.../uimaj-eclipse-update-site</url>
</repository>

当我在更新的项目中运行mvn compile时,Tycho找到本地更新站点,但仍然找不到org.apache.uima.runtime

代码语言:javascript
复制
...
[INFO] Adding repository file:/.../uimaj-eclipse-update-site
[INFO] Adding repository file:/.../uimaj-eclipse-update-site
[INFO] Resolving dependencies of MavenProject: org.cleartk:org.cleartk.plugin.jcasgen.m2e:0.9.1.qualifier @ /.../jcasgen-m2e-connector/org.cleartk.plugin.jcasgen.m2e/pom.xml
[INFO] Cannot complete the request.  Generating details.
[INFO] Cannot complete the request.  Generating details.
[INFO] {osgi.ws=cocoa, osgi.os=macosx, osgi.arch=x86_64, org.eclipse.update.install.features=true}
[ERROR] Cannot resolve project dependencies:
[ERROR]   Software being installed: org.cleartk.plugin.jcasgen.m2e 0.9.1.qualifier
[ERROR]   Missing requirement: org.cleartk.plugin.jcasgen.m2e 0.9.1.qualifier requires 'bundle org.apache.uima.runtime [2.4.0,3.0.0)' but it could not be found
[ERROR] 
[ERROR] Internal error: java.lang.RuntimeException: "No solution found because the problem is unsatisfiable."
...

我做错了什么?

如果您想复制错误,我将从这个目录运行mvn compile (在修改了上面的pom.xml之后):

http://cleartk.googlecode.com/git/jcasgen-m2e-connector/

编辑:我确实在生成的artifacts.xml中看到了org.apache.uima.runtime

代码语言:javascript
复制
<artifact classifier='org.eclipse.update.feature' id='org.apache.uima.runtime' version='2.4.0'>
  <properties size='4'>
    <property name='artifact.size' value='9466'/>
    <property name='download.size' value='9466'/>
    <property name='download.md5' value='f9d4f1f8dc54f0a99379dcede2fc2700'/>
    <property name='download.contentType' value='application/zip'/>
  </properties>
</artifact>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-10-08 08:53:57

浏览svn链接,看起来插件目录是空的,并且只有一些特性。您可能只需要先运行maven就可以“构建”它并填充插件目录。

如果您拥有所有内容,则可以运行p2特性和包发布者应用程序直接生成p2存储库。如果要在Tycho构建中使用它,则不需要生成更新站点的类别侧。

票数 3
EN

Stack Overflow用户

发布于 2015-08-05 01:54:54

我迟到了,但是Apache现在有了一个p2存储库。

在您的pom.xml中添加uima存储库:

代码语言:javascript
复制
<repositories>
    <repository>
        <id>uima</id>
        <url>http://www.apache.org/dist/uima/eclipse-update-site</url>
        <layout>p2</layout>
    </repository>
</repositories>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12771851

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档