3

我正在尝试使用 hbm2java Maven 插件进行休眠。对于 mvn hibernate3:hbm2cfgxml 目标,我面临以下错误。

[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building my-app-hadoop 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] >>> hibernate3-maven-plugin:2.2:hbm2cfgxml (default-cli) @ my-app-hadoop >>>
[INFO]
[INFO] <<< hibernate3-maven-plugin:2.2:hbm2cfgxml (default-cli) @ my-app-hadoop <<<
[INFO]
[INFO] --- hibernate3-maven-plugin:2.2:hbm2cfgxml (default-cli) @ my-app-hadoop ---
[WARNING] The POM for jdbc.artifact.groupid:jdbc-driver:jar:1.0 is missing, no dependency information available
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.454s
[INFO] Finished at: Tue Aug 28 11:14:20 IST 2012
[INFO] Final Memory: 3M/6M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.codehaus.mojo:hibernate3-maven-   plugin:2.2:hbm2cfgxml (default-cli) on project my-app-hadoop: Ex
ecution default-cli of goal org.codehaus.mojo:hibernate3-maven-plugin:2.2:hbm2cfgxml   failed: Plugin org.codehaus.mojo:hibernate3-m
aven-plugin:2.2 or one of its dependencies could not be resolved: Failure to find  jdbc.artifact.groupid:jdbc-driver:jar:1.0 in htt
p://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval
of central has elapsed or updates are forced -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginResolutionException

我在 POM.xml 中添加了以下插件配置以使用 hbm2java 功能。

<build>
<plugins>
  <plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>hibernate3-maven-plugin</artifactId>
    <version>2.2</version>
    <configuration>
      <components>
        <component>
          <name>hbm2ddl</name>
          <implementation>jdbcconfiguration</implementation>
        </component>
        <component>
          <name>hbm2hbmxml</name>
          <outputDirectory>src/main/resources</outputDirectory>
        </component>
      </components>
      <componentProperties>
        <drop>true</drop>
        <configurationfile>/src/main/resources/hibernate.cfg.xml</configurationfile>
      </componentProperties>
    </configuration>
    <dependencies>
      <dependency>
        <groupId>jdbc.artifact.groupid</groupId>
        <artifactId>jdbc-driver</artifactId>
        <version>1.0</version>
      </dependency>
    </dependencies>
  </plugin>
</plugins>

我在哪里可以找到 jdbc.artifact.groupid 以及我的 pom.xml 中缺少什么?

4

2 回答 2

2

您必须将 jdbc.artifact.groupid:jdbc-driver:1.0 替换为真正的供应商工件。例如

<dependency>
    <groupId>org.hsqldb</groupId>
    <artifactId>hsqldb</artifactId>
    <version>2.2.8</version>
</dependency>

如果你使用 hsqldb。

编辑

正如您在评论中提到的那样,您在评论中使用了 Oracle ... Oracle db 的 jdbc jar 随您的 Oracle 发行版一起提供。您也可以在此处下载。下载后,您必须手动将其放入本地 Maven 存储库中(如果您有 Maven 存储库管理器(Nexus、Archiva...),您也可以将其存储在 Maven 存储库管理器的第三方存储库中。另一种方法是使用systemPath声明添加依赖项:

<dependency>
   <groupId>com.oracle.jdbc</groupId>
   <artifactId>ojdbc6_g</artifactId>
   <version>11.2.0.2.0</version>
   <systemPath>"C:/ThirpartyJars/Oracle/ojdbc6_g.jar"</systemPath>
</dependency>
于 2012-08-28T06:41:35.867 回答
0

替换你的依赖

   <dependency>
    <groupId>jdbc.artifact.groupid</groupId>
    <artifactId>jdbc-driver</artifactId>
    <version>1.0</version>
  </dependency>

   <dependency>
     <groupId>com.oracle</groupId>
        <artifactId>ojdbc6</artifactId>
         <version>11.2.0</version>
   </dependency>
于 2012-08-28T06:52:34.013 回答