我真的厌倦了一直与Maven 2挣扎.构建工具不应该妨碍.最近我一直在关注Buildr和Gradle.Maven 3似乎解决了一些困难.那么,我现在该怎么办?Buildr?摇篮?还是等一年Maven 3?
我正在开发一个基于OSGi的应用程序(使用Equinox),试图对我在OSGi + Equinox上发现的网络教程进行编组.在这个项目中,有些捆绑包取决于其他捆绑(报价服务取决于报价).编译阶段确实成功,但封装阶段没有.Maven抱怨如下:
[INFO] [bundle:bundle] [ERROR] Error building bundle de.vogella.osgi:quote-service:bundle:0.0.1 : Unresolved references to [de.vogella.osgi.quote] by class(es) on the Bundle-Classpath[Jar:dot]: [de/vogella/osgi/quoteservice/Activator.class, de/vogella/osgi/quoteservice/QuoteService.class] [ERROR] Error(s) found in bundle configuration
我确实理解了这个问题,但是没有看到如何让它发挥作用.这是引用的pom:
<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/maven-v4_0_0.xsd">
<parent>
<artifactId>osgi-first-app</artifactId>
<groupId>de.vogella.osgi</groupId>
<version>0.0.1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>de.vogella.osgi</groupId>
<artifactId>quote</artifactId>
<packaging>bundle</packaging>
<name>Quote Bundle</name>
<version>0.0.1</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>1.4.3</version>
<extensions>true</extensions>
<configuration>
<instructions>
<_include>src/main/resources/META-INF/MANIFEST.MF</_include>
</instructions>
</configuration>
</plugin>
</plugins>
</build>
</project>
Run Code Online (Sandbox Code Playgroud)
和报价的捆绑清单:
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Quote Plug-in
Bundle-SymbolicName: de.vogella.osgi.quote
Bundle-Activator: de.vogella.osgi.quote.Activator
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Import-Package: org.osgi.framework;version="1.3.0" …Run Code Online (Sandbox Code Playgroud) 我正在调查OSGi包的开发环境领域.
我的目标是找到一种方法来轻松开发,测试和调试我将要编写的包.此外,我有一些"文化"要求.
到目前为止,这是我所知道的信息
你有什么想法吗?一些maven/eclipse插件?
编辑:我的目标不是提供Eclipse插件或功能,它实际上是创建独立的应用程序,这可能最终被打包为Web应用程序(在以类似的方式,作为一个例子,吊索).第谷能够做到吗?它似乎不是这样,因为它的打包类型页面只列出了eclipse特定的包类型(但我可能错了)