Ste*_*all 5 java ant hibernate slf4j
我正在努力完成"Beginning Hibernate 3.5",我遇到了一个初步障碍.
当我运行时ant exportDDL,我收到以下错误:
exportDDL:
[htools] Executing Hibernate Tool with a Hibernate Annotation/EJB3 Configuration
[htools] 1. task: hbm2ddl (Generates database schema)
[htools] SLF4J: The requested version 1.6 by your slf4j binding is not compatible with [1.5.5, 1.5.6, 1.5.7, 1.5.8]
[htools] SLF4J: See http://www.slf4j.org/codes.html#version_mismatch for further details.
[htools] An exception occurred while running exporter #2:hbm2ddl (Generates database schema)
[htools] To get the full stack trace run ant with -verbose
[htools] Problems in creating a AnnotationConfiguration. Have you remembered to add it to the classpath ?
[htools] java.lang.NoSuchMethodError: org.slf4j.helpers.MessageFormatter.format(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)Lorg/slf4j/helpers/FormattingTuple;
BUILD FAILED
C:\hibernate\project\build.xml:30: Problems in creating a AnnotationConfiguration. Have you
remembered to add it to the classpath ?
Run Code Online (Sandbox Code Playgroud)
使用以下ant任务:
<target name="exportDDL" depends="compile">
<mkdir dir="${sql}"/>
<htools destdir="${sql}">
<classpath refid="classpath.tools"/>
<annotationconfiguration
configurationfile="${src}/hibernate.cfg.xml"/>
<hbm2ddl drop="true" outputfilename="sample.sql"/>
</htools>
</target>
<target name="compile">
<javac srcdir="${src}" destdir="${bin}" classpathref="classpath.base"/>
</target>
Run Code Online (Sandbox Code Playgroud)
这里发生了什么?ant compile工作正常,但exportDDL任务没有.sl4j jar在classpath上,我下载了slf4j-simple-1.6.1.jar.思考?
Art*_*ald 18
这里解决了你想要的
混合混合不同版本的slf4j工件可能会导致问题.例如,如果你正在使用SLF4J的API-1.6.1.jar,那么你应该也使用SLF4J-简单1.6.1.jar,用SLF4J-简单1.5.5.jar将无法正常工作.
通常,您应该确保slf4j-api版本与slf4j绑定的版本匹配.
在初始化时,如果SLF4J怀疑可能存在版本不匹配问题,它将发出有关可疑不匹配的警告.有关版本不匹配检测机制的确切详细信息,请参阅常见问题解答中的相关条目.
| 归档时间: |
|
| 查看次数: |
13679 次 |
| 最近记录: |