maven-bundle-plugin osgi felix maven入门。

昨天弄maven-bundle-plugin,因为别人要求用这个。自己也从没有接触过,对这几个概念毫无所知。

搜索,无论用什么关键词,出来的东西,都是直接给你xml,叫你怎么修改。基本的东西,都没有谈。

完全看不懂。一个命令都舍不得给。

这个是官方文档:

http://felix.apache.org/documentation/subprojects/apache-felix-maven-bundle-plugin-bnd.html

呵呵……我看不懂。

折腾了很久。

误区:

如何安装felix、maven、maven-bundle-plugin——这是个误区,你只需要安装maven即可。

安装maven:https://jingyan.baidu.com/article/acf728fd68b4bef8e510a31c.html

步骤:

1、cd D:\OSGI\maven_project_0

2、mvn archetype:generate -DgroupId=com.yourcompany.smartgateway -DartifactId=consumerBanking -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false  -Dversion=0.1.1

3、修改pom.xml

注意我的xml。并非一个完全正确的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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.iwangding</groupId>
  <artifactId>smartgateway.smart</artifactId>
  <packaging>bundle</packaging>
  <name>WangDing Speed Test</name>
  <version>0.1.1</version>
  <description>
    WangDing Speed Test application.
  </description>
	<dependencies>
	<dependency>
      <groupId>org.apache.felix</groupId>
      <artifactId>org.osgi.core</artifactId>
      <version>1.0.0</version>
    </dependency>
  </dependencies>
  <build>
    <plugins>
      <plugin>
		<groupId>org.apache.felix</groupId>
		<artifactId>maven-bundle-plugin</artifactId>
		<version>3.5.0</version>
		<extensions>true</extensions>
		<configuration>
		  <instructions>
			<Export-Package>com.iwangding.smartgateway.smart</Export-Package>
			<Private-Package>com.iwangding.smartgateway.smart.*</Private-Package>
			<Bundle-SymbolicName>iwangding_smart</Bundle-SymbolicName>
			<Bundle-Vendor>iwangding</Bundle-Vendor>
			<Bundle-Activator>com.iwangding.smartgateway.smart.Activator</Bundle-Activator>
			<Import-Package>org.osgi.framework</Import-Package>
			<MaxDataStorageSize>32768</MaxDataStorageSize>
		  </instructions>
		</configuration>
	  </plugin>
    </plugins>
  </build>
</project>
dependencies org.apache.felix 这段就会让maven自动给你“安装”或者说“加载”felix。
plugin maven-bundle-plugin 这段就是安装”或者说“加载”或者说“使用”maven-bundle-plugin。
通过这个xml这三者就联系起来了。


这是我搞不明白的地方!

4、mvn package

mvn bundle:bundle

这二个是打包命令,看到如下信息,应该就是成功了(我目前不会运行,因为我看到别的文正,实在太差,着急写一个)。


5、目录结构如下:


猜你喜欢

转载自blog.csdn.net/leinchu/article/details/79708972