簡體   English   中英

帶有Maven-jaxb2-plugin的非法模式字符

[英]Illegal pattern character with maven-jaxb2-plugin

我是maven的新手,這是我第一次使用maven-jaxb2-plugin從.xsd模式生成Java類。

這是我的pom.xml:

 <properties>
    <java.source.version>1.6</java.source.version>
    <java.target.version>1.6</java.target.version>
 </properties>
 <build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>${java.source.version}</source>
                <target>${java.target.version}</target>
            </configuration>

        </plugin>


        <plugin>
            <groupId>org.jvnet.jaxb2.maven2</groupId>
            <artifactId>maven-jaxb2-plugin</artifactId>
            <version>0.8.3</version>
            <executions>
                <execution>
                    <goals>
                        <goal>generate</goal>
                    </goals>
                </execution>
            </executions>

            <configuration>
                <schemaDirectory>src/main/resources/schema</schemaDirectory>
                <schemaIncludes>
                    <include>mySchema.xsd</include>
                </schemaIncludes>
                <generatePackage>it.mycompany.jaxb2</generatePackage>
                <readOnly>true</readOnly>
            </configuration>
        </plugin>
    </plugins>
    </build>    
<dependencies>
    <!-- A few dependiences -->
</dependencies>

問題是當我嘗試跑步時

mvn安裝

我收到以下錯誤

Caused by: org.apache.maven.plugin.PluginExecutionException: Execution default of goal org.jvnet.jaxb2.maven2:maven-jaxb2-plugin:0.8.3:generate failed: Illegal pattern character 'g'
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:115)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
... 20 more
  Caused by: java.lang.IllegalArgumentException: Illegal pattern character 'g'
at java.text.SimpleDateFormat.compile(SimpleDateFormat.java:768)
at java.text.SimpleDateFormat.initialize(SimpleDateFormat.java:575)
at java.text.SimpleDateFormat.<init>(SimpleDateFormat.java:500)
at com.sun.tools.xjc.Options.getPrologComment(Options.java:937)
at com.sun.tools.xjc.addon.episode.PluginImpl.run(PluginImpl.java:177)
at com.sun.tools.xjc.model.Model.generateCode(Model.java:294)
at org.jvnet.mjiip.v_2_2.XJC22Mojo.generateCode(XJC22Mojo.java:70)
at org.jvnet.mjiip.v_2_2.XJC22Mojo.doExecute(XJC22Mojo.java:45)
at org.jvnet.mjiip.v_2_2.XJC22Mojo.doExecute(XJC22Mojo.java:29)
at org.jvnet.jaxb2.maven2.RawXJC2Mojo.doExecute(RawXJC2Mojo.java:318)
at org.jvnet.jaxb2.maven2.RawXJC2Mojo.execute(RawXJC2Mojo.java:160)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:106)
... 21 more

Maven的配置方式如下:

mvn --version Maven主目錄:C:\\ Program Files(x86)\\ apache-maven-3.1.1 \\ bin .. Java版本:1.6.0_45,供應商:Sun Microsystems Inc. Java主目錄:C:\\ Program Files(x86 )\\ Java \\ jdk1.6.0_45 \\ jre默認語言環境:it_IT,平台編碼:Cp1252操作系統名稱:“ windows 8”,版本:“ 6.2”,arch:“ x86”,家族:“ windows”

我在哪里做錯了?

問題是默認的maven-jaxb2-plugin使用jaxb-xjc的2.2.6版本,該版本存在一些問題

默認語言環境:it_IT

但僅適用於美國語言環境。 然后我對pom添加了以下依賴性

  <dependency>
    <groupId>com.sun.xml.bind</groupId>
    <artifactId>jaxb-xjc</artifactId>
    <version>2.2.5</version>
  </dependency>

現在一切正常。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM