jjzjj

java - 什么时候应该将一个多模块项目拆分成单独的存储库树?

目前我们有一个项目的标准颠覆存储库布局:./主干./分支机构./标签但是,随着我们沿着OSGi和模块化项目的道路前进,我们最终得到了:./trunk/bundle/main./trunk/bundle/modulea./trunk/bundle/模块./tags/bundle/main-1.0.0./tags/bundle/main-1.0.1./tags/bundle/modulea-1.0.0'build'仍然非常单一,因为它按顺序构建所有模块,尽管我开始怀疑我们是否应该将构建/存储库重构为更像这样的东西:./bundle/main/trunk./bundle/main/tags/

java - eclipse 链接 : No Persistence provider for EntityManager named

我想创建一个能够使用JavaPersistence的Bundle。为此,我在Eclipse中创建了一个插件项目。在我的项目中,我在META-INF中创建了一个persistence.xml文件。我已经在我的MANIFEST.mf中添加了这3个包(到依赖项中):javax.persistence.jarorg.eclipse.persistence.jarorg.eclipse.persistence.jar然后,在我的Activator中,我使用以下行创建一个EntityManager:factory=Persistence.createEntityManagerFactory(PER

java - 服务模型与扩展器模型?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭9年前。Improvethisquestion我刚刚彻底审查了ApacheFelixApplicationDemonstration与形状。文章状态:WhencreatinganOSGi-basedapplicationtherearetwomainorthogonalissuestoconsider:Servicemodelvs.extendermodelBundledapplicationvs.hostedframeworkThe

java - OSGi 包和普通 .JAR 文件用法之间的区别

我最近开始研究OSGi。我读到可以创建bundle(这是普通的java类)并通过动态安装/卸载任何包。但我似乎无法理解在任何Java类中使用普通.JAR文件与使用bundle之间的区别。谁能帮我澄清一下?谢谢你。 最佳答案 基本上没有区别。JAR是一个包,一个包是一个JAR,格式是相同的。但是,有用包需要其list中的OSGi元数据,以便OSGi框架可以管理包之间类的可见性。没有此元数据的JAR将只包含不可见的类,看不到其他包中的任何类,也无法以任何方式启动。Import-Packagelistheader告诉包应该对包可见,而Ex

java - 在纯 Java 中拆分包

OSGi存在拆分包的问题,​​即相同的包但托管在多个包中。在普通Java(没有OSGi)中是否存在拆分包可能造成问题的边缘情况?只是好奇。 最佳答案 拆分包从何而来拆分包(在OSGi中)在使用listheaderRequire-Bundle时发生(我相信,在Eclipse的list中就是如此)。Require-Bundle命名用于搜索类的其他包(如果包不是Imported)。搜索发生在搜索束自己的类路径之前。这允许从多个包(可能是不同的jar)的导出中加载单个包的类。OSGi规范(4.1)第3.13节描述了Require-Bundl

java - Equinox 中的 Sling 日志记录配置

我正在尝试在Equinox项目中使用ApacheSling日志记录。它工作正常,但我无法让Sling使用我的配置文件。我正在使用标准的logback配置xml,它应该根据Slingdocumentation工作.但无论我将配置文件放在哪里,Sling都不会使用它。我的logback配置如下:%d{dd.MM.yyyyHH:mm:ss.SSS}*%level*[%thread]%logger%message%n 最佳答案 我设法让Sling使用我的配置文件的唯一方法是将配置文件的位置作为VM参数传递,如下所示:-Dorg.apache

java - 使用 XML 解析器实现作为 OSGi 服务

我正在使用OSGi(Equinox平台)开发应用程序,其中一个包需要解析XML文件。到目前为止,我使用SAX(javax.xml.parsers.SAXParserFactory)实现了它,我想从平台中检索SAXParserFactory。我看到OSGi标准提供了一个XMLParserActivator以允许JAXP实现自行注册(http://www.osgi.org/javadoc/r4v41/org/osgi/util/xml/XMLParserActivator.html),所以我的猜测是应该有一些包将SAXParserFactory作为服务提供。但是,我不知道要添加哪个包作为依

java - 如何使用 OSGI 打包和使用现有的 Java 库

在寻求帮助管理Java中相同库的不同版本的依赖关系后,有人建议我应该看一下OSGI实现。在截止日期的压力下,我真的可以使用一些帮助来避免我挖掘无休止的OSGI文档。我有一个正在运行的应用程序,它将使用一个新框架。该框架使用了我已经在使用的不同版本的jar,因此我想将新框架打包为OSGI包。我可以让我的应用程序保持原样,只将OSGI包用作JVM中的容器吗?这意味着我将仅使用OSGIbundle将一组类与JVM的其余部分隔离开来,以避免不同版本的类之间发生冲突。换句话说,我想使用OSGI而无需将我的所有代码都带到基于OSGI的设置中。亲切的问候塞夫 最佳答案

java - OSGi 中的 JSP : How to load TLD from bundles?

我们正在构建一个JSP网络应用程序,它在ApacheFelixOSGi容器中运行(网络应用程序本身是一个OSGi包)。现在,我们面临着以下问题:根据JSP2.0规范,TLD(taglib描述符)不再需要驻留在Web应用程序的WEB-INF文件夹中,而是直接从taglib的jarMETA-INF文件夹加载。这个taglibjar通常位于Web应用程序的WEB-INF/lib文件夹中,但因为它们是OSGi包,所以它们由Felix加载。在taglib的OSGi信息中,我们确实导入了所有需要的包。那里的任何人都知道如何告诉servlet在加载的OSGi包中搜索TLD?感谢您的帮助!

java - 使用 SSH 的 Apache Felix shell

我对如何通过SSH使用ApacheFelix感兴趣?我想使用SSH从远程计算机访问Felixshell。我知道有telnet支持,但它太不安全了。有什么解决办法吗? 最佳答案 是的,有一个,如描述的那样here(该指南是相对于eclipse的春分点但没关系)使用gogoshell的组合,apacheminasshd服务器和三equinoxconsolebundles(core+sshplugin+jaaspluginforsshauthentication)你将能够连接到mina的ssh服务器,你与OSGi相关的命令将由gogosh