2015-09-04 2 views
2

я изо всех сил, чтобы решить эту проблему с 2013 года ... Я использую Windows 7.Apache CXF wsdl2java Не удалось создать types-> Доступ запрещен

[ERROR] Не удалось выполнить задачу org.apache.cxf: cxf-codegen-plugin: 3.1.2: wsdl2java (generate-sources) для поставщика-поставщика данных-поставщика проекта: Исходные источники генерации Цель org.apache.cxf: cxf-codegen- плагин: 3.1.2: wsdl2java failed: сбой для генерации типов. a: \ Misc \ WsMock \ service-data-model-provider \ src \ main \ java \ schema \ eo \ common \ system \ messageheader \ v1 \ MessageContextType.java (Доступ запрещен) -> [Помощь 1]

Его совершенно случайный случай и случается для меня на всех версиях cxf и разных версиях java. На данный момент я нахожусь на JDK 1.8.45 и CXF 3.1.2

Проблема может быть решена путем установки всегда

Но тогда сборка всегда успешна даже есть некоторые ошибки, которые будут происходить показаны [Предупреждение] в журнале .. Поэтому я не могу использовать ничего подобного.

Вот мой 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> 

Другое дело, что помогает, но его не решения вопроса полностью, чтобы отключить параметр WriteToCache в драйвере WindowsHardDrive.

Это означает, что система слишком медленная, и CXF \ Java пытается использовать файл до его полной записи на диск. Использование SSD проблема происходит только изредка.

Наша модель данных огромна (много XSD), а жесткие диски зашифрованы, поэтому все так медленно.

Любые идеи по настройке java для обработки этого? Или, может быть, проблема с CXF?

Полный Трассировка стека

[ERROR] Не удалось выполнить гол org.apache.cxf: CxF-Codegen-плагин: 3.1.2: wsdl2java (порождающие-источники) по проекту сервис-данных- model-provider: Execution generate-sources Цель org.apache.cxf: cxf-codegen-plugin: 3.1.2: wsdl2java не удалось: Fai привел для генерации типов. a: \ Misc \ WsMock \ service-data-model-provider \ src \ main \ java \ co \ schema \ common \ fault \ creati onfault \ v1 \ ObjectFactory.java (Доступ запрещен) -> [Справка 1] org.apache.maven.lifecycle.LifecycleExecutionException: не удалось выполнить выполнить цель org.apache.cxf: cxf-codegen-plugin: 3.1.2: w sdl2java (источники-источники) для поставщика данных-поставщика данных: Исполнение сгенерированные источники цели org.apache.cx f: cxf-codegen-plugin: 3.1.2: wsdl2java failed: Не удалось создать типы. на org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:224) на org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:153) на org.apache. maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:145) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:116) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:80) на org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (. SingleThreadedBuilder Java: 51) в org.apache.maven .lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:307) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:193)) на org.apache.maven.DefaultMaven.execute (DefaultMaven.java:106) на org.apache.maven.cli.MavenCli.execute (MavenCli.java:862) на org.apache.maven.cli.MavenCli .doMain (MavenCli.java:286) at org.apache.maven.cli.MavenCli.main (MavenCli.java:197) на sun.reflect.NativeMethodAccessorImpl.invoke0 (нативный метод) на sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) в sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) в java.lang .reflect.Method.invoke (Method.java:497) на org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289) на org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:229) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:356) Вызвано: org.apache.maven.plugin.PluginExecutionException: Выполнение generate-sources цели org.apache.cxf: cxf-codeg en-plugin: 3.1.2: wsdl2java failed: Не удалось создать типы. at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:145) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:208) ... еще 20 Причина, вызванная : org.apache.cxf.tools.common.ToolException: Не удалось создать типы. на org.apache.cxf.tools.wsdlto.databinding.jaxb.JAXBDataBinding.generate (JAXBDataBinding.java:839) в org.apache.cxf.tools.wsdlto.WSDLToJavaContainer.generateTypes (WSDLToJavaContainer.java:730) на org.apache.cxf.tools.wsdlto.WSDLToJavaContainer.processWsdl (WSDLToJavaContainer.java:270) на org.apache.cxf.tools.wsdlto.WSDLToJavaContainer.execute (WSDLToJavaContainer.java:164) на org.apache.cxf. tools.wsdlto.WSDLToJavaContainer.execute (WSDLToJavaContainer.java:415) at org.apache.cxf.tools.common.toolspec.ToolRunner.runTool (ToolRunner.java:103) по адресу org.apache.cxf.tools.wsdlto. WSDLToJava.run (WSDLToJava.java:113) at org.apache.cxf.tools.wsdlto.WSDLToJava.run (WSDLToJava.java:86) at org.apache.cx f.maven_plugin.wsdl2java.WSDL2JavaMojo.generate (WSDL2JavaMojo.java:415) на org.apache.cxf.maven_plugin.AbstractCodegenMoho.execute (AbstractCodegenMoho.java:260) на org.apache.cxf.maven_plugin.wsdl2java.WSDL2JavaMojo. выполнить (WSDL2JavaMojo.java:512) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:134) ... 21 more Причиняется: java.io.FileNotFoundException: a: \ Misc \ WsMock \ service-data-model-provider \ src \ main \ java \ uk \ co \ schema \ common \ fault \ creationfault \ v1 \ ObjectFactory.java (доступ запрещен) в java.io.FileOutputStream.open0 (собственный метод) на java.io.FileOutputStream.open (FileOutputStream.java:270) на java.io.FileOutputStream. (FileOutputStream.java:213) на java.io.FileOutputStream. (FileOutputStream.java:162) в org.sonatype.plexus.build.incremental.DefaultBuildContext.newFileOutputStream (DefaultBuildContext.java:54) в org.apache.cxf.maven_plugin.wsdl2java.WSDL2JavaMojo $ 1.createOutputStream (WSDL2JavaMojo.java:411) at org.apache.cxf.tools.wsdlto.databinding.jaxb.TypesCodeWriter.openBinary (TypesCodeWriter.Java: 72) в com.sun.codemodel.CodeWriter.openSource (CodeWriter.java:100) на com.sun.codemodel.JPackage.createJavaSourceFileWriter (JPackage.java:490) на com.sun.codemodel.JPackage. build (JPackage.java:441) at com.sun.codemodel.JCodeModel.build (JCodeModel.java:311) at com.sun.codemodel.JCodeModel.build (JCodeModel.java:301) at org.apache. cxf.tools.wsdlto.databinding.jaxb.JAXBDataBinding.generate (JAXBDataBinding.java:827) ... 32 еще [ERROR] [ERROR] Повторно запустите Maven, используя переключатель -X, чтобы включить полное ведение журнала отладки. [ERROR] [ERROR] Для получения дополнительной информации об ошибках и возможных решениях, пожалуйста, прочитайте следующие статьи: [ERROR] [Помощь 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginExecutionException

Приветствия Prem

+0

Отключить запись в кеш - очень хороший совет. Спасибо! – chillworld

ответ

0

То же самое случилось со мной ..
я тоже был JDK 1.8 и CxF 3.1.x
Я попробовал ту же задачу на старом компьютере с JDK 1.7 и CXF 2.7.0 и он работал как шарм ..
Добавление < пл ugin> будет генерировать схему и службу из wsdl каждый раз при создании сборки. Я не знаю, эффективен ли это или нет, но я извлек схему и службу один раз и добавил их в корневой каталог.
Thanks

+0

Мы не будем для меня вариантом, так как мне нужно регенерировать схемы каждый раз, когда я создаю проект. – Prem

+0

@Prem Вам следует попробовать на ПК с Java 7 ... Прочитайте первые FAQ с этого официального сайта CXF .. http://cxf.apache.org/faq.html#FAQ-CanCXFrunwithJDK1.8/Java8? – Yadvendra

+0

Я пробовал, и я получаю то же самое. Использование быстрого ssd или использования cxf с включенным fork = всегда все работает нормально. Но это не вариант для меня, и я все еще ищу реальную проблему. Cheers – Prem

Смежные вопросы