基于karaf的项目离线打包与发布(onos相关)

chrisrc.iteye.com/blog/1983168

现象描述: onos编译成功后,无法启动。

根本原因: 计算云无法联网。在onos激活app的过程中会下载一些karaf自带包。

解决办法: 把正常能启动的karaf下的system文件夹,替换到不能正常启动的karaf下。(karaf的依赖包存在system文件夹下。)同时修改配置文件org.ops4j.pax.url.mvn.cfg, org.ops4j.pax.url.mvn.repositories变量加上${org.ops4j.pax.url.mvn.defaultRepositories}.

备注:

org.ops4j.pax.url.mvn.repositories配置中存在两个指向目录路径的仓库URL,即:

file:${karaf.home}/${karaf.default.repository}@id=system.repository, 和 file:${karaf.data}/kar@id=kar.repository@multi。file:${karaf.home}/${karaf.default.repository}@id=system.repository 实际指向的是karaf安装目录下的system目录(也可以根据需要自行调整,karaf.default.repository参数位于etc/system.properties文件中);file:${karaf.data}/kar@id=kar.repository@multi实际指向的是karaf安装目录下的data/kar目录。