- 浏览: 38496 次
- 性别:
- 来自: 内江
文章分类
最新评论
Pax-Construct 是用来创建osgi工程的maven的插件,以后创建osgi架构的工程再也不用import一大堆plugin工程了。
http://www.ops4j.org/projects/pax/construct/ 是Pax插件官网的入门教程,简单的说分为以下几步:
1)http://repo1.maven.org/maven2/org/ops4j/pax/construct/scripts/1.4/scripts-1.4.zip 是pax插件的下载地址,下载了该插件后设置环境变量就可以使用了。
2)pax-create-project -g examples -a test 该命令是创建一个OSGI的工程, -g 代表groupId为 examples ; -a 代表artifactId 为test
3)进入到test 目录创建一个bundle。命令如下:cd test
pax-create-bundle -p org.example.pkg -n test.bundle 其中-p 代表包名 -n代表bundle的名称
4)mvn pax:eclipse -DdownloadSources 编译代码,导入到eclipse中
5)mvn clean install pax:provision 部署工程到felix 。在这一步有可能报如下的错误:
An API incompatibility was
encountered while executing org.ops4j:maven-pax-plugin:1.4:compile:
java.lang.NoSuchMethodError:
org.apache.maven.project.MavenProject.addPlugin(Lorg/apache/maven/model/Plugin;)V
该错误的原因是Pax-Construct 试图改变maven的编译接口以更好的适应osgi。解决办法为修改poms/pom.xml文件。
原文件:
<pluginManagement>
<plugins>
<plugin>
<groupId>org.ops4j</groupId>
<artifactId>maven-pax-plugin</artifactId>
<!--
| enable improved OSGi compilation support for the bundle life-cycle.
| to switch back to the standard bundle life-cycle, move this setting
| down to the maven-bundle-plugin section
-->
<extensions>true</extensions>
<!-- 修改这里-->
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>1.4.3</version>
</plugin>
</plugins>
</pluginManagement>
修改后文件:
<pluginManagement>
<plugins>
<plugin>
<groupId>org.ops4j</groupId>
<artifactId>maven-pax-plugin</artifactId>
<!--
| enable improved OSGi compilation support for the bundle life-cycle.
| to switch back to the standard bundle life-cycle, move this setting
| down to the maven-bundle-plugin section
-->
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>1.4.3</version>
<extensions>true</extensions>
<!-- 移动到这里 -->
</plugin>
</plugins>
</pluginManagement>
发表评论
-
Apache ActiveMQ教程
2015-09-11 11:08 649一、特性及优势 1、实现JMS1.1规范,支持J2EE1. ... -
Maven命令创建java项目
2015-08-27 16:22 525------------------------------ ... -
搭建Eova开发环境
2015-08-27 09:48 9381、安装好maven 2、下载Eova项目解压到文件夹eo ... -
java生成API文档
2015-08-27 09:36 4121、选择项目右键-Export\javadoc 2、选择生 ... -
poi导出excel
2013-05-15 22:12 550import java.util.Date; publ ... -
Maven环境搭建
2013-04-22 09:56 648一、安装 1、下载Maven包到指定目录如 ... -
maven struts2 spring3 hibernate 4 pom.xml配置
2013-03-15 17:13 847<project xmlns=" ... -
Java中协变
2013-03-12 14:51 670协变是指一个类型随着它关联的类型一起变化,有点抽像,java ... -
HttpClient发送post请求
2012-11-29 23:35 771import java.io.IOException; ... -
Java设计模式
2012-11-01 17:16 923一、单例模式 package com.model.si ... -
Eclipse关联JDK源码
2012-10-29 10:48 6481、点"Window"->" ... -
Spring配置
2012-08-15 18:15 9741、web.xml文件 <?xml versi ... -
Spring加载配置文件
2012-08-15 17:28 553< import resource= "cl ... -
Java Clone
2012-08-13 09:51 786package com.test.java; publi ... -
Spring及Hibernate使用Properties文件
2012-08-10 18:28 1235applicationContext.xml中使用Proper ... -
java project 转换成 web project
2012-08-10 16:16 625首选修改项目的.project文件 1. ... -
Maven pom.xml配置详解
2012-08-06 10:32 904<project xmlns="http: ... -
Eclipse安装Maven插件
2012-08-04 10:04 7721先安装subeclipse插件就是svn 方法 ... -
Maven创建Spring-DM工程
2012-08-02 23:39 1066http://www.ops4j.org/projects/p ... -
Maven搭建J2EE
2012-07-31 23:47 1102一、maven安装 1、 解压apache-ma ...
相关推荐
本技术文档涵盖了三个关键领域:设计模式、Maven项目管理和OSGI模块系统,这些都是Java开发中的核心概念。 首先,让我们深入探讨设计模式。设计模式是软件工程中的一种最佳实践,代表了在特定上下文中解决问题的...
【标题】:“Maven管理ServiceMix工程” 在Java企业级开发中,Apache ServiceMix是一个流行的开源企业服务总线(ESB)和应用服务器,它基于OSGi容器,并且集成了许多开源项目,如Apache Camel、CXF等。Maven作为...
2. **创建bundle**:使用OSGi兼容的构建工具(如BndTools或Maven Bundle Plugin)将“myself”工程打包为bundle。在MANIFEST.MF文件中,定义Bundle-SymbolicName和Bundle-Version属性,以标识bundle的唯一性和版本。...
在本文中,我们将深入探讨如何基于VirgoServer进行Spring Osgi Web开发,这是一个涉及OSGi容器、Spring框架和Web应用程序的集成技术。首先,我们需要确保拥有正确的开发环境和工具,包括Spring Tool Suite (STS),...
创建第一个OSGi bundle是一个简单的练习,旨在熟悉基本的OSGi开发流程。 **2.8 Bundle生命周期** 了解bundle的生命周期对于正确地管理bundle的状态至关重要。 **2.9 增量开发** 在OSGi环境中,增量开发意味着...
此示例项目展示了典型 AEM 项目的 maven 设置可能是什么样子。 主要关注的是 maven 插件的使用以及继承可选的构建配置文件installBundle和installPackage 。 pom 文件中有很多注释进一步解释了所采用的方法。 项目...
创建Java工程是Maven的基本功能之一。使用mvn archetype:generate命令可以启动一个基于不同模板的项目工程的创建。常见的工程类型包括普通的Java应用、Android应用、OSGi bundle、Clojure项目、Web应用打包(WAR)等...
基于VirgoServer进行Spring Osgi Web开发需要配置VirgoServer开发环境,使用Maven和Eclipse Virgo Tools,创建Bundle Project,并配置Spring配置文件。同时,需要实现Servlet类,用于处理请求,并配置classpath和...
2. **模板支持**:它提供了预定义的模板,用于快速创建不同类型的OSGi工程,如Bundle、Fragment、Composite Bundle等,极大地提高了开发效率。 3. **依赖管理**:插件会智能地处理OSGi bundle间的依赖关系,确保每...
### Eclipse Maven Spring DM(译文)- ...综上所述,本指南全面覆盖了从开发环境搭建到项目创建、配置、测试直至最终部署的整个过程,旨在帮助开发者深入了解如何使用Eclipse、Maven和Spring DM进行OSGi平台项目开发。
- **创建Bundle Project**:在STS中创建一个新的OSGi Bundle项目。 - **定义接口与实现类**: - **接口定义**:定义一个接口以供其他模块调用。 - **实现类编写**:实现上述接口。 - **对外发布接口**: - ...
在本示例中,我们将深入探讨如何将 Xtext 与多模块 Maven 项目结构以及 Tycho 结合使用,以便于构建和管理复杂的 DSL 工程。 首先,让我们了解 Xtext 的基本工作流程。Xtext 提供了 `..xtext` 文件,这是一种 XML ...
`MANIFEST.MF`文件是OSGi规范中的一个清单文件,它定义了插件的运行时属性,如插件名称、版本、唯一标识符(Bundle-SymbolicName)、激活策略以及依赖的其他插件等。例如,`Bundle-Activator`字段指定了插件启动时...
要开始编写插件,首先需要创建一个Maven项目,并在`pom.xml`中设置`parent`为`onboard.parent`,并指定插件的`artifactId`。这样可以确保项目继承Onboard的父工程,获取必要的基础配置和依赖。 ```xml <groupId>...
1. 插件开发:Eclipse基于OSGi框架,开发者可以创建自定义插件扩展其功能。 2. 常用插件:如Mylyn(任务管理)、PMD(代码质量检查)、FindBugs(静态代码分析)等。 3. Maven插件:M2Eclipse插件支持Maven项目集成...
在Eclipse中创建新项目时,我们需要选择合适的项目类型,如Java工程、Web工程或Android应用工程。每个项目类型都有其特定的目录结构和构建规则。例如,Java工程通常包含src目录用于存放源代码,bin目录存放编译后的...
- Java工程创建:了解如何创建Java类、接口、包,以及导入导出。 - 构建路径:管理项目的类路径、源路径和库。 - JUnit测试:利用Eclipse内置的JUnit框架进行单元测试。 5. **插件系统**: - 插件开发:了解...
你可以创建各种类型的项目,如Java工程、Web工程或Android应用。每个项目都有自己的构建路径、源代码目录和输出目录。Eclipse的“构建路径”功能允许用户自定义类库引用,这对于引入外部JAR文件或依赖于其他项目至关...
- 项目:在工作空间中,可以创建各种类型的项目,如Java工程、Web工程等,每个项目包含源代码、资源文件、配置文件等。 3. **代码编辑器**: - 自动完成:Eclipse的代码编辑器提供了强大的自动补全功能,可帮助...