无法在JDK8中运行wsimport实用程序

时间:2014-05-09 01:16:54

标签: java amazon-web-services command-prompt wsimport

我在目录C:\Program Files\Java\jdk1.8.0_05\中安装了JDK8,并且我将PATH环境变量设置为C:\Program Files\Java\jdk1.8.0_05\bin

现在;为了使用亚马逊的产品API,我遵循Java设置部分下的指南here;我使用以下命令...

wsimport -d ./build -s ./src  -p com.ECS.client.jax http://webservices.amazon.com/AWSECommerceService/AWSECommerceService.wsdl -b jaxws-custom.xml

在我在桌面上创建的自定义目录中打开命令提示符后;该自定义目录包含Amazon提供的说明页面中指定的构建和src目录。

现在我运行上述命令;我收到错误了......

'wsimport' is not recognized as an internal or external command

然而;如果我在同一个命令提示符下运行Java -version,那么一切运行正常并符合预期。

不确定从哪里开始或为什么不通读?

注意我已尝试this page处的解决方案;无济于事。

1 个答案:

答案 0 :(得分:0)

我在以下文章的评论部分找到了这个。我在这里完整地包含它,因为我认为它解释了为什么你的JDK8 / wsimport无法构建,以及当你切换回Java7时它为什么会工作。

http://blog.takipi.com/6-reasons-not-to-switch-to-java-8-just-yet/

即使这篇文章写于3年前,我仍然遇到java8 / wsimport问题(2017)。

  

为什么不提一些更明显的:

     
      
  1. Javadoc中的新默认值(称为doclint)将破坏您的构建。特别是如果你使用Maven和某种CI(例如Hudson,   詹金斯)你很快就会意识到你不能只接受你的项目   并在JDK8中构建。你的构建几乎肯定会出错,因为   新的Javadoc。 (我还没有看到一个没有的项目)。该   原因是在Maven中,来自javadoc工具的返回错误代码将会   停止整个发布过程...正如我所说,我还没有看到一个   不会在某处具有Javadoc doclint不合规的项目。   大多数大型项目(例如Netty)似乎只是简单地解决了这个问题   关闭doclint(当然这不是doclint背后的想法)   或者他们留在JDK7上一段时间,直到他们把他们所有人都解雇了   评论问题。

  2.   
  3. JDK8中的代码生成工具(例如wsimport)生成的代码不符合doclint。这是一个明确的错误并且有详细记录。它   意味着JDK8的一部分不与另一部分一起工作   JDK8。如果你有一个网络,预计不得不以某种方式绕过这个   消费者申请。

  4.