在hibernate-extensions中使用hbm2java出错

songbt 2005-04-07 10:52:17
C:\test\ext\tools\bin>hbm2java c:\test\com\dlsp\*.xml --output=c:\test\
信息:
HIBERNATEHOME_HOME set to C:\test\hibernate-3.0
HIBERNATEHOMETOOLS_HOME set to C:\test\ext\tools
Exception in thread "main" java.lang.NoClassDefFoundError: net/sf/hibernate/MappingException

hibernate 版本是3.0的, 上面目录 ext即hibernate-extension目录

急等各位高手赐教!!!
setenv.bat:
@echo off

rem -------------------------------------------------------------------
rem Setup environment for hibernate tools
rem -------------------------------------------------------------------
set HIBERNATE_HOME=C:\test\hibernate-3.0
echo HIBERNATE_HOME set to %HIBERNATE_HOME%
set JDBC_DRIVER=D:\Oracle\product\10.1.0\Client_3/jdbc/lib/oracle9i.jar

set HIBERNATETOOLS_HOME=C:\test\ext\tools
echo HIBERNATETOOLS_HOME set to %HIBERNATETOOLS_HOME%

if "%HIBERNATE_HOME%" == "" goto noHIBERNATEHome

set CORELIB=%HIBERNATE_HOME%\lib
set LIB=%HIBERNATETOOLS_HOME%\lib
set CP=%CLASSPATH%;%JDBC_DRIVER%;%HIBERNATE_HOME%\hibernate3.jar;%CORELIB%\commons-logging-1.0.4.jar;%CORELIB%\commons-lang-1.0.1.jar;%CORELIB%\cglib-2.1.jar;%CORELIB%\dom4j-1.5.2.jar;%CORELIB%\odmg-3.0.jar;%CORELIB%\xml-apis.jar;%CORELIB%\xerces-2.4.0.jar;%CORELIB%\xalan-2.6.2.jar;%LIB%\jdom.jar;%CORELIB%\commons-collections-2.1.1.jar;%LIB%\hibernate-tools.jar

if not "%HIBERNATE_HOME%" == "" goto end

:noHIBERNATEHome
echo HIBERNATE_HOME is not set. Please set HIBERNATE_HOME.
goto end

:end
...全文
306 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
songbt 2005-04-15
  • 打赏
  • 举报
回复
晕!!!!
YuLimin 2005-04-13
  • 打赏
  • 举报
回复
@echo off

rem -------------------------------------------------------------------
rem Setup environment for hibernate tools
rem -------------------------------------------------------------------

REM 打开tools\bin\setenv.bat 文件,修改其中的JDBC_DRIVER和HIBERNATE_HOME环境变量,使其指向我们的实际JDBC Driver文件和Hibernate所在目录

set JDBC_DRIVER=E:\OpenSource\MySQL\lib\mysql-connector-java-3.0.14-production-bin.jar;F:\Oracle\Ora92\jdbc\lib\classes12.jar

set HIBERNATETOOLS_HOME=%~dp0..
echo HIBERNATETOOLS_HOME set to %HIBERNATETOOLS_HOME%

if "%HIBERNATE_HOME%" == "" goto noHIBERNATEHome

set CORELIB=%HIBERNATE_HOME%\lib
set LIB=%HIBERNATETOOLS_HOME%\lib
set CP=%CLASSPATH%;%JDBC_DRIVER%;%HIBERNATE_HOME%\hibernate2.jar;%CORELIB%\commons-logging-1.0.4.jar;%CORELIB%\commons-lang-1.0.1.jar;%CORELIB%\cglib-full-2.0.2.jar;%CORELIB%\dom4j-1.4.jar;%CORELIB%\odmg-3.0.jar;%CORELIB%\xml-apis.jar;%CORELIB%\xerces-2.4.0.jar;%CORELIB%\xalan-2.4.0.jar;%LIB%\jdom.jar;%CORELIB%\commons-collections-2.1.1.jar;%LIB%\..\hibernate-tools.jar

if not "%HIBERNATE_HOME%" == "" goto end

:noHIBERNATEHome
echo HIBERNATE_HOME is not set. Please set HIBERNATE_HOME.
goto end

:end
songbt 2005-04-11
  • 打赏
  • 举报
回复
楼上的楼上,我按你说的又试一遍,可结果还是那样阿,急死我了!是不是我hibernate用3.0的原因啊??还是文件夹放的位置的原因啊,期待中……
lwj040825 2005-04-10
  • 打赏
  • 举报
回复
我对bin下的setenv.bat进行了如下配置:
1:设置了jdbc_driver.
2: 设置了hibernate_home.
3:对应了CP与%hibernate_home%\lib下的jar文件
最后执行hbm2java的时候还是提示找不到主类(CodeGenerator.class)
Exception in thread "main" java.lang.NoClassDefFoundError:(后面还有一大堆东西)
特别提示:CP中引入了hibernate_extension.jar的
我在%hibernate_extension_home%\tools下直接使用如下命令:
set classpath=%classpath%;%extension_home%\tools\hibernate-tools.jar
java net.sf.hibernate.tool.hbm2java.CodeGenerator 结果它提示
Exception in thread "main" java.lang.NoClassDefFoundError: net/sf/hibernate/Mapp
ingException
然后我反编译了一下那个CodeGenerator还是找不出什么原因呀??
lwj040825 2005-04-10
  • 打赏
  • 举报
回复
我的配法跟你的差不多,有一点不同:set HIBERNATETOOLS_HOME=%~dp0.. 这个最好不要修改
因为%~dp0相当于是一个变量,在运行的时候相当于是从根到你的bin目录的整个路径,
那个..表示往后退一层。所以跟你写的set HIBERNATETOOLS_HOME=C:\test\ext\tools是一样的
另外你从这个%LIB%\hibernate-tools.jar反推就可以看出来,
lwj040825 2005-04-10
  • 打赏
  • 举报
回复
兄弟,你跟我出了一样的错误,我昨天弄了一天,还是没搞顶,搞定了一定把方法介绍一下哟,
能交流交流吗 QQ:403949168
禽兽v5 2005-04-09
  • 打赏
  • 举报
回复
如果会用ant的话,看我的文章:
http://blog.csdn.net/cm4ever/archive/2005/04/07/339579.aspx
songbt 2005-04-08
  • 打赏
  • 举报
回复
兄弟,能不能把你的setenv.bat文件让我看一下啊?
我是不太清楚HIBERNATETOOLS_HOME这个应该写上哪个路径,
一些资料只说了HIBERNATE_HOME的路径。
songbt 2005-04-08
  • 打赏
  • 举报
回复
另外 CP=%CLASSPATH% 这里的 CLASSPATH 是在哪里定义的啊?
dlxu 2005-04-07
  • 打赏
  • 举报
回复
应该是你的环境lib没有配正确,我配正确了是可以正常使用的

50,549

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧