endorsed java_关于java:在jdk1.6中使用Endorsed目录的确切方法是什么

我想将jaxws升级到2.2(jdk1.6与jaxws 2.1捆绑在一起)。我的jdk是(我没有安装public jre):

java version"1.6.0_20"

Java(TM) SE Runtime Environment (build 1.6.0_20-b02)

Java HotSpot(TM) Client VM (build 16.3-b01, mixed mode)

在jaxws自己的文档中,他们解释了如何做到这一点:

解决此问题的一种方法是将jaxws-api.jar和jaxb-api.jar复制到JRE认可的目录$JAVA_HOME/lib/endorsed (or $JDK_HOME/jre/lib/endorsed)中。

但是我不确定这对我的安装是否有任何影响。对于初学者,我仅定义了%JAVA_HOME%。文件夹$JAVA_HOME/lib/endorsed不存在,因此我创建并复制了两个jar。但是如果我这样做(wsgen是来自jaxws的工具)

wsgen -version

我仍然得到:

JAX-WS RI 2.1.6 in JDK 6

我还尝试创建文件夹JAVA_HOME\jre\lib\endorsed(请注意,在文档中他们说的是JDK_HOME,但由于我只有JAVA_HOME,因此使用了此路径)。仍然是相同的wsgen输出。

我的问题是:

文档页面中的JAVA_HOME和JDK_HOME有什么区别?有什么重要的或仅两种引用JAVA_HOME的方法吗?

'wsgen -version'是检查使用的jaxws版本的有效方法还是总是在原始jdk中调用exe,但这并不意味着将使用认可的jar?

有谁知道在jdk.16中安装jaxws2.2的非常详细的步骤?

我发现这篇文章暗示了我所看到的一切

您应该检查系统属性java.endorsed.dirs,例如通过调用System.getProperty("java.endorsed.dirs")。在Windows计算机上,通常类似于C:\Program Files\Java\jdk1.6.0_16\jre\lib\endorsed。将您要认可的jar文件放在这里。如果该目录不存在,则创建它。

另一个选择是将罐子放在您自己喜欢的目录中,但是通过添加命令行开关-Djava.endorsed.dirs=覆盖系统属性。

它与环境变量无关。 %JAVA_HOME%只是文档中的简写,它不知道Java的安装位置或Java版本。

%JAVA_HOME%是指JRE(非开发人员将拥有的常规运行时)。 %JDK_HOME%指开发人员将使用的JDK(Java开发工具包)的根目录。

不仅如此,您还必须知道何时从何处运行wsgen,并且相应的JVM配置了包含jars的认可目录。

无论在哪里运行wsgen,因为我的路径中都有JAVA_HOME% bin。 因此,wsgen.exe将永远是其中的一个。 但我希望它可以将罐子装到认可的目录中

问题是关于如何认可?

jre中包含的wsimport和wsgen作为exe位于jre / bin目录中,如果仍然从命令行调用它,它将仍然运行Jax-WS 2.1实现。

要更新到Jax-WS 2.2,您需要从jaxws网站下载相关的JAX-WS 2.2.X RI。

您需要将内容提取到计算机上。

您还需要将jaxws-api.jar和jaxb-api.jar复制到认可的目录中(按照您的原始描述)

但是,现在不使用wsgen.exe或wsimport.exe(适用于您的项目),而现在需要使用jax-ws 2.2更新/下载中提供的服务。

在从JAX-WS 2.2下载中提取的jaxws-ri目录中,您将看到一个bin目录和4个文件(wsgen.bat,wsgen.sh,wsimport.bat,wsimport.sh),这些就是这些文件。您需要运行它。

要运行它们,您必须设置JAXWS_HOME环境变量(有关详细信息,请参见wsgen / wsimport.bat / sh文件)。

现在,您应该可以在JDK 1.6上运行JAX-WS 2.2

谢谢! 正如您可能猜到的,我在问题后6年不需要:)但也许可以帮助某人

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值