我正在尝试执行此教程
http://enroute.osgi.org/tutorial_iot/120-exploring.html
,但我有一个问题:
osgi.enroute.iot.pi.provider
找不到软件包,因此我可以解决bndrun依赖性:
Unable to resolve <<INITIAL>> version=null:
missing requirement osgi.enroute.iot.pi.provider
当我尝试
时osgi.enroute.iot.pi.command
找不到依赖性:
Unable to resolve <<INITIAL>> version=null:
missing requirement enroute.iot.raspberry.application
-> Unable to resolve enroute.iot.raspberry.application version=1.0.0.201611270001:
missing requirement com.pi4j.system]
我在项目构建路径中手动下载并添加pi4j,所以我不再蚀了问题,但是我跌倒了,这不是OSGI的好解决方案,并且它不在我的远程Raspberry SSH控制台上运行...
感谢OSGI邮件列表中的Daghan,他们提供了一个解决方案:
" osgi.enroute.iot.pi.provider"不再是Enroute发行版的一部分。请从您的项目中删除手动下载的PI4J,并执行以下操作:
1-打开CNF> central.xml
2-添加以下
<!-- https://mvnrepository.com/artifact/org.osgi/osgi.enroute.iot.pi.provider -->
<dependency>
<groupId>org.osgi</groupId>
<artifactId>osgi.enroute.iot.pi.provider</artifactId>
<version>2.0.0</version>
</dependency>
这解决了我的问题,但是包括pi4j的依赖性不是覆盆子的最新情况,所以我更喜欢添加
<dependency>
<groupId>com.pi4j</groupId>
<artifactId>pi4j-core</artifactId>
<version>1.1</version>
</dependency>
现在一切都像魅力一样工作!