首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mvn生成源失败,为什么类路径上没有xml?

mvn生成源失败,为什么类路径上没有xml?
EN

Stack Overflow用户
提问于 2013-10-18 02:13:38
回答 2查看 4.8K关注 0票数 0

我正在尝试使用org.codehaus.mojo xmlbeans- maven -plugin为OGCKML2.2生成java类,作为maven生成源过程的一部分。java代码似乎是正确生成的,但我在编译过程中遇到了大量错误,抱怨说‘Packageorg.apache.xmlbean’。XMLBeans显然是一个依赖项,它存在于我的~/.m2存储库中,我一直在查看jar以确保类在那里。看起来XMLBeans成功地在目标/生成的源中生成了java文件,但在编译过程中不知何故它就不在类路径中了。

我试图更改org.apache.xmlbeans依赖项的范围,但没有效果。

这是pom.xml

代码语言:javascript
复制
  <modelVersion>4.0.0</modelVersion>
  <groupId>net.opengis</groupId>
  <artifactId>ogc-kml</artifactId>
  <version>2.2.0</version>
  <packaging>pom</packaging>
  <name>ogc-kml</name>

  <build>
    <plugins>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>xmlbeans-maven-plugin</artifactId>
        <version>2.3.3</version>
        <executions>
         <execution>
          <goals>
           <goal>xmlbeans</goal>
          </goals>
         </execution>
        </executions>
        <inherited>true</inherited>
        <configuration>
          <download>true</download>
          <schemaDirectory>src/main/xsd</schemaDirectory>
       </configuration>
     </plugin>
    </plugins>
  </build>
  <dependencyManagement>
    <dependencies>

      <dependency>
        <groupId>org.apache.xmlbeans</groupId>
        <artifactId>xmlbeans</artifactId>
        <version>2.6.0</version>
      </dependency>

    </dependencies>
  </dependencyManagement>

该项目由一个包含来自http://schemas.opengis.net/kml/2.2.0/的两个xsd的src/main/xsd文件夹组成。整个文件夹结构位于https://github.com/iancw/maven-xmlbeans-question

如果我将我的~/.m2repo中的xmlbeans放在类路径上,我可以手工编译这些类。

代码语言:javascript
复制
xmlbeans$ javac -classpath ~/.m2/repository/org/apache/xmlbeans/xmlbeans/2.4.0/xmlbeans-2.4.0.jar org/w3/x2005/atom/*.java org/w3/x2005/atom/impl/*.java net/opengis/kml/x22/*.java x0/oasisNamesTcCiqXsdschemaXAL2/*.java x0/oasisNamesTcCiqXsdschemaXAL2/impl/*.java net/opengis/kml/x22/*.java net/opengis/kml/x22/impl/*.java
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
xmlbeans$ 

我看了很多例子,看起来我做得很对。我没见过其他人抱怨这个问题。有什么建议吗?

(有趣的是,虽然我尝试了xmlbean依赖项的2.4.0和2.6.0,但maven似乎从未将2.6.0版本下载到我的存储库中)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-18 07:17:33

在问题中包含的POM文件中,您只定义了dependencyManagement部分中的xmlbeans依赖项。在构建时将其包含在类路径中之前,还需要在POM的dependencies部分中定义它。

例如,您的POM应该是:

代码语言:javascript
复制
<build>
    <plugins>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>xmlbeans-maven-plugin</artifactId>
            ...
        </plugin>
    </plugins>
</build>
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.apache.xmlbeans</groupId>
            <artifactId>xmlbeans</artifactId>
            <version>2.6.0</version>
        </dependency>
    </dependencies>
</dependencyManagement>
<dependencies>
    <groupId>org.apache.xmlbeans</groupId>
    <artifactId>xmlbeans</artifactId>
</dependencies>
票数 2
EN

Stack Overflow用户

发布于 2020-08-06 06:20:17

另一个类似的问题,

查看和ext文件夹中的旧beans。

插件将项目依赖项放在类路径的末尾。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19440482

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档