使用eclipse-plugin包将java插件转换为maven项目

时间:2015-11-18 19:57:08

标签: java maven eclipse-plugin tycho maven-eclipse-plugin

我对java很有经验,但我第一次使用maven。 我已经安装了Eclipse Kepler(Eclipse for RCP和RAP Developers),我已经安装了Tychus以及#34;添加新软件"按钮。

我克隆并构建了一个名为OM2M的Internet of things project。 我一步一步地按照安装维基进行操作,直到那时一切正常。 cloning wiki here

我想开发自己的OSGI模块,所以我去了开发人员'维基的一部分又一次创建了一个新的插件项目。 当我尝试将此插件项目转换为maven项目(link to the step i'm talking about)时,我不必去eclipse-plugin"我的pom wiki screenshot here的包装类型。

我在网上查了一下,显然它与需要配置的Tychus有关,我尝试在盒子里输入它但显然我在尝试构建时遇到问题,我尝试编辑主要的pom.xml我发现的东西,但没有一个工作,我真的不知道如何使它工作。

你们有个主意吗? 谢谢

编辑:我忘了提到我读了this thread,但我不明白答案,我不知道在哪里放置代码最顶层的答案是在谈论,也不是我知道OSGI显示的位置。

编辑2:当我手工输入eclipse-plugin时,我得到pom.xml: 如果我手动编写eclipse-plugin是我的pom.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>org.eclipse.om2m</groupId>
  <artifactId>org.eclipse.om2m.sample.ipu</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>eclipse-plugin</packaging>
</project>

编辑3:我设法通过将主pom.xml设置为父级来删除错误,但现在当我尝试构建时,我有以下错误:

[ERROR] Failed to execute goal org.eclipse.tycho:tycho-packaging-plugin:0.20.0:validate-version (default-validate-version) on project org.eclipse.om2m.sample.ipu: Unqualified OSGi version 1.0.0.qualifier must match unqualified Maven version 0.0.1-SNAPSHOT for SNAPSHOT builds -> 

我已经搜索了目标,但我不知道在哪里设置或编辑它们。

编辑4:感谢@Wim Anckaert我已经从pom.xml和清单中删除了.qualifier和.snapshot,现在它似乎正在运行! 非常感谢你们。

2 个答案:

答案 0 :(得分:2)

最后一个错误似乎是&lt; 版本&gt;的问题./META-INF/MANIFEST.MF文件的./pom.xml和 Bundle-Version 。这些应该彼此相等。

我们的pom.xml的一部分:

<artifactId>be.cs.fashion.awg.core</artifactId>
<name>CERPS</name>
<version>2.1.0</version>
<packaging>eclipse-plugin</packaging>

我们MANIFEST.MF的一部分

Bundle-Name: CERPS
Bundle-SymbolicName: be.cs.fashion.awg.core;singleton:=true
Bundle-Version: 2.1.0
Bundle-Localization: plugin

所以在你的情况下,pom.xml版本中的版本应该是&#34; 1.0.0-SNAPSHOT&#34;或者你应该使用Bundle-Version&#34; 0.0.1.qualifier&#34; 我们放弃了&#34; -SNAPSHOT&#34;和#34; .qualifier&#34;在我们的版本中。

答案 1 :(得分:0)

价值&#34; eclipse-plugin&#34;未包含在组合中(即下拉列表框here),您应该手动编写。

更新:首先,您必须启用tycho。为此,请添加

<build>
  <plugins>
    <plugin>
      <groupId>org.eclipse.tycho</groupId>
      <artifactId>tycho-maven-plugin</artifactId>
      <version>0.24.0</version>
      <extensions>true</extensions>
    </plugin>
  </plugins>
</build>

到您的pox.xml(或者,最好是其父母)。

然后,您需要知道您在屏幕截图上显示的向导不 搜索以获取 标记的所有可能值,而是添加到&#34;包装&#34;下拉列表框最可用的值,允许您输入任何所需的值。

有关详细信息,请查看here