当前位置: 首页 > 知识库问答 >
问题:

apache cxf wsdl2java无法生成类型->拒绝访问

班展
2023-03-14

自2013年以来,我一直在努力解决这个问题...我用的是Windows7。

[ERROR]未能执行目标org.apache.cxf:cxf-codegen-plugin:3.1.2:WSDL2java(generate-sources)对项目服务-data-model-provider:Execution generate-gourne-goal org.apache.cxf:cxf-cdegen-plugin:3.1.2:WSDL2java失败:未能生成类型。A:\misc\wsmock\service-data-model-provider\src\main\java\schema\eo\common\system\messageheader\v1\messageContextType.java(访问被拒绝)->[help1]

但是构建总是成功的,甚至会发生一些错误,这些错误在日志中显示为[警告]。所以我不能用那样的东西。

这是我的cfg

<plugin>
    <groupId>org.apache.cxf</groupId>
    <artifactId>cxf-codegen-plugin</artifactId>
    <version>${cxf.version}</version>
    <executions>
        <execution>
            <id>generate-sources</id>
            <phase>generate-sources</phase>
            <configuration>
                <sourceRoot>${basedir}/src/main/java</sourceRoot>
                <defaultOptions>
                    <extraargs>
                        <extraarg>-validate</extraarg>
                        <extraarg>-exsh</extraarg>
                        <extraarg>true</extraarg>
                    </extraargs>
                </defaultOptions>
                <wsdlRoot>..\..\..</wsdlRoot>
                <includes>
                    <include>mds/apps/services/**/*.wsdl</include>
                </includes>
            </configuration>
            <goals>
                <goal>wsdl2java</goal>
            </goals>
        </execution>
    </executions>
</plugin>

另一个有帮助但不能完全解决问题的方法是禁用WindowsHardDrive驱动程序中的WriteToCache设置。

干杯普雷姆

共有1个答案

汝吕恭
2023-03-14

(将@Prem的评论移到这个答案上,并添加更多细节)

添加 Always 可以解决这个问题。

示例配置:

     <plugin>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-codegen-plugin</artifactId>
        <version>${cxf.version}</version>
        <executions>
          <execution>
            <id>generate-source</id>
            <phase>generate-sources</phase>
            <configuration>
              <fork>always</fork>
            </configuration>
...
<!-- Rest of the configuration -->

docs-maven-cxf-codegen-other配置

 类似资料:
  • 我是谷歌API新手,几天来我一直在尝试使用服务帐户将内容上传到谷歌云存储桶。我能够做到这一点,但只能使用从谷歌API游乐场获得的临时访问令牌,我需要能够获得新的访问令牌,以便服务帐户能够始终上载内容。 我一直在尝试以下方法,但我一直被拒绝访问,即使有问题的帐户具有“所有者”权限。 答复: 当我运行时,我得到了正确的项目,该帐户是我的工作电子邮件,也是谷歌云的所有者。 提前谢谢!

  • 我创建了一个jenkins服务器,并试图在该服务器上构建一个。NET Core2.0.0项目。我已经能够成功地从源代码管理中提取并在工作区中存储源文件。但是,我在运行dotnet构建命令时遇到了一个问题。这就是我得到的。 /usr/share/dotnet/sdk/2.0.0/microsoft.common.currentversion.targets(4116,5):错误MSB3021:无法将

  • 问题内容: 我让ELK堆栈在VM内的docker容器中运行。 我可以向ES填充,它可以在Kibana中显示。 我可以使用Logstash读取文件并将其输出到stdout。 但是Logstash无法将数据发送到ES (启用或禁用xpack似乎没有什么不同) 输出 之后,它会在“发送批量请求”,“执行运行状况检查”,“尝试复活”和“意外的池错误”之间保持循环。 随着每一次的同时,我也看到了 问题答案:

  • 远程:HTTP基本:拒绝访问 Windows 10 x64。

  • 当我创建新用户或授予现有特权,我得到了这个错误: 授予所有表上的权限ok(信息\u架构除外),在此表上我得到了拒绝访问错误。我怎么能修理?转储所有数据库,删除所有数据库,然后从转储还原?

  • 为什么当我试图创建InputStream时,下面的代码会给我一个File Not Found异常?我的inputdirectory定义为一个文件,其值为“D:\general\images\small_images”(不带引号),我的用户对该文件具有完全的写权限。我正在使用Windows7,并以管理员的身份运行eclipse IDE。 如有任何帮助,不胜感激。