当前位置: 首页 > 面试题库 >

取决于Eclipse中tools.jar(Sun JDK)中的com.sun.javadoc

亢胤运
2023-03-14
问题内容

我们的插件之一需要已安装的JDK,而不仅仅是JRE。我们需要com.sun.javadoc和来自tools.jar的朋友。我认为Sun的许可证不会允许重新分发tools.jar(如果您已经拥有JDK,则没有必要)。

似乎在Eclipse中也没有办法将JDK指定为依赖项。Eclipse新闻组中的所有答案都建议最终用户必须首先正确配置其Eclipse。

您是否知道有任何解决方法, 仅通过使用Eclipse的机载机制来 使依赖关系对我们插件的用户显而易见?Import- Package与com.sun.jdi不同,该包似乎对于清单文件甚至无效。

(作为一种解决方法,当前我们只能在插件激活时警告该库丢失。)


问题答案:

由于eclipse提供了OSGi环境,因此您可以参考文章“
在OSGi中公开引导类路径 ”,然后尝试使用:

  • 系统软件包声明
  • 扩展捆绑(片段)声明
  • 或启动委托

通过指定所需的JDK软件包,OSGI框架将尝试加载它们(如果此处未包含,则会失败)。
通过指定特定于JDK5或JDK6的版本,您甚至可以确保JDK的正确版本。

OSGi规范允许框架(通过其系统捆绑包)使用该org.osgi.framework.system.packages属性将其父类加载器中的所有相关软件包导出为系统软件包。
由于将主机重新打包JDK为捆绑包不是一个可行的选择,因此可以使用此设置让系统捆绑包(或ID为0的捆绑包)自行导出这些软件包。
大多数OSGi实现已使用此属性来导出所有公共JDK包(基于检测到的JDK版本)。以下是Java 1.6的Equinox配置文件的摘录:

org.osgi.framework.system.packages = \
  javax.accessibility,\
  javax.activity,\
  javax.crypto,\
  javax.crypto.interfaces,\
  …
  org.xml.sax.helpers

使用此属性,可以添加额外的程序包,这些程序包将由框架加载和提供,并且可以连接到其他捆绑软件。

org.osgi.framework.system.packages = \
  javax.accessibility,\
  javax.activity,\
  …
  org.xml.sax.helpers, \
  special.parent.package

注意:指定的更简单解决方案Bundle- RequiredExecutionEnvironment仅适用于JRE,而不适用于JDK。

这种配置需要成为Equinox框架的config.ini的一部分(有关Jetty及其config.ini,请参见此示例)。
在您的情况下,它将在片段的config.ini中声明。



 类似资料:
  • 我使用的是mac,这是我的java版本输出

  • 我正在尝试解决我的eclipse项目中的maven依赖项。 依赖项已经下载到我的maven dependencies文件夹中(如下所示) 然而,import语句仍然没有解析。 在我的java构建路径中,存在Maven Dependencies文件夹。 到目前为止,我已经尝试在命令行上重建项目并在eclipse中刷新它;我尝试在eclipse中重建它;我尝试在eclipse中更新项目。 似乎什么都没

  • 问题内容: 我的表格模型中有以下代码: 我想更改每行的背景颜色,例如if ,我希望此行具有黄色背景,如果行是蓝色,等等。 我发现了一些示例,这些示例根据JTable中的值对行重新着色。但是实际上并未显示getIsValid和getIsRegistered(),它们仅存在于模型中。任何建议或示例都将真正有帮助。提前致谢。 更新。我的TableCellRenderer: 使用渲染器: 表格通常显示为黄

  • 我正在尝试使用keras对图像进行二值分类。 我的CNN模型对训练数据进行了良好的训练(训练准确率约为90%,验证准确率约为93%)。但在培训期间,如果我将批量大小设置为15000,则得到图I输出,如果我将批量大小设置为50000,则得到图II输出。有人能告诉我怎么了吗?预测不应该取决于批量大小,对吗? 我用于预测的代码: 我的型号:-

  • 问题内容: 我试图使用Dagger在正在构建的应用程序上进行依赖注入,当我拥有一个程序包的模块(取决于注入器(可能是另一个模块)提供的值)时,在构造适当的DAG时遇到了麻烦。 如果我有一个用于配置变量的简单模块(例如,我可能想换成测试环境) 而另一个模块依赖于它,例如 我尝试在构造函数中引导注入的行失败,并且它抱怨我没有在适当的模块中指定显式行。 通过反复试验,我发现如果在行中添加,这种情况就消失

  • 我希望在一个配置类中有多个@PostConstruct注释方法,应该依赖于@Profile调用这些方法。您可以想象这样一段代码: 然而,根据@PostConstruct的javadoc,我只能用这个注释对一个方法进行注释。在Spring的Jira https://Jira.spring.io/browse/spr-12433中有一个开放的改进。 你是如何解决这个需求的?我总是可以将这个配置类拆分为