我正在尝试构建一个非常简单的包,我想把内部的源代码放在调试中。首先,根据BND说明参考here,我尝试将<sources>true</sources>
添加到<instructions>
。
之后,在this讨论中,我发现它应该是<_sources>true</_sources>
,带有下划线。好的,现在它开始尝试将源代码放入捆绑包中,但我仍然有错误:
Bundle ru.fragmental.beaver:blob.api:bundle:1.0-SNAPSHOT:添加不是目录的源路径:D:\ devel \ fragmental.beaver \ blob_api \ target \ generated-sources \ annotations
有人可以澄清我的pom.xml有什么问题吗?而且,第二个问题是 - 为什么需要下划线,我在哪里可以找到关于此的文档? 我的pom.xml和项目结构如下:
pom.xml(此文本编辑器使用了xml架构和项目标签,但它们存在于原始文件中):
<groupId>ru.fragmental.beaver</groupId>
<artifactId>blob.api</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>bundle</packaging>
<build>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<instructions>
<Bundle-Name>Blob API</Bundle-Name>
<Bundle-SymbolicName>ru.fragmental.beaver.blob.api</Bundle-SymbolicName>
<Export-Package>ru.fragmental.beaver.blob.api</Export-Package>
<_sources>true</_sources>
</instructions>
</configuration>
</plugin>
</plugins>
</build>
项目结构如下:
blob_api
|
|--src
| |
| |--main
| |
| |--java
| |
| |--ru.fragmental.beaver.blob.api(as nested dirs)
| |
| |
| |--BlobPojo.java
| |--BlobStorage.java
|
|--pom.xml
整个项目是here
答案 0 :(得分:0)
正确的bnd指令是-sources: true
(参见http://bnd.bndtools.org/instructions/sources.html。)但是在映射到maven pom文件的XML元素时,你不能使用 - ,因此它被修改为_。这就是maven-bundle-plugin将XML元素发送到bnd指令的方式。
第二个问题似乎是maven-bundle-plugin中的一个错误,因为它为bnd提供了一个不存在的目录,然后抱怨。