Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在H2中,是;跟踪“U级”文件=4“;仅适用于本地/嵌入式数据库?_Java_Database_H2 - Fatal编程技术网

Java 在H2中,是;跟踪“U级”文件=4“;仅适用于本地/嵌入式数据库?

Java 在H2中,是;跟踪“U级”文件=4“;仅适用于本地/嵌入式数据库?,java,database,h2,Java,Database,H2,我尝试在服务器/tcp上使用“TRACE\u LEVEL\u FILE=4” DriverManager.getConnection("jdbc:h2:tcp://localhost/" + f.toURI() +";TRACE_LEVEL_FILE=4;", "sa", ""); 并使用将日志级别设置为警告 java.util.logging.Logger h2database = java.util.logging.Logger.getLogger("h2database"); h2dat

我尝试在服务器/tcp上使用“TRACE\u LEVEL\u FILE=4”

DriverManager.getConnection("jdbc:h2:tcp://localhost/" + f.toURI() +";TRACE_LEVEL_FILE=4;", "sa", "");
并使用将日志级别设置为警告

java.util.logging.Logger h2database = java.util.logging.Logger.getLogger("h2database");
h2database.setLevel(Level.WARNING);
我得到的只是scan123db.trace.db中的这条消息

01-24 15:04:14 database: org.h2.message.TraceWriterAdapter
org.h2.message.DbException: Class "org.h2.message.TraceWriterAdapter" not found [90086-169]
at org.h2.message.DbException.get(DbException.java:158)
at org.h2.message.TraceSystem.setLevelFile(TraceSystem.java:199)
at org.h2.engine.Database.open(Database.java:519)
at org.h2.engine.Database.openDatabase(Database.java:222)
at org.h2.engine.Database.<init>(Database.java:217)
at org.h2.engine.Engine.openSession(Engine.java:56)
at org.h2.engine.Engine.openSession(Engine.java:159)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:138)
at org.h2.engine.Engine.createSession(Engine.java:121)
at org.h2.server.TcpServerThread.run(TcpServerThread.java:136)
at java.lang.Thread.run(Unknown Source)
Caused by: org.h2.jdbc.JdbcSQLException: Class "org.h2.message.TraceWriterAdapter" not found      [90086-169]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:329)
... 11 more
Caused by: java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
at org.h2.message.TraceWriterAdapter.<init>(TraceWriterAdapter.java:28)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at org.h2.message.TraceSystem.setLevelFile(TraceSystem.java:197)
... 9 more
01-24 15:04:14数据库:org.h2.message.TraceWriterAdapter
org.h2.message.DbException:未找到类“org.h2.message.TraceWriterAdapter”[90086-169]
位于org.h2.message.DbException.get(DbException.java:158)
位于org.h2.message.TraceSystem.setLevelFile(TraceSystem.java:199)
位于org.h2.engine.Database.open(Database.java:519)
位于org.h2.engine.Database.openDatabase(Database.java:222)
位于org.h2.engine.Database。(Database.java:217)
位于org.h2.engine.engine.openSession(engine.java:56)
位于org.h2.engine.engine.openSession(engine.java:159)
位于org.h2.engine.engine.createSessionAndValidate(engine.java:138)
位于org.h2.engine.engine.createSession(engine.java:121)
位于org.h2.server.TcpServerThread.run(TcpServerThread.java:136)
位于java.lang.Thread.run(未知源)
原因:org.h2.jdbc.JdbcSQLException:未找到类“org.h2.message.TraceWriterAdapter”[90086-169]
位于org.h2.message.DbException.getJdbcSQLException(DbException.java:329)
... 还有11个
原因:java.lang.NoClassDefFoundError:org/slf4j/LoggerFactory
位于org.h2.message.TraceWriterAdapter。(TraceWriterAdapter.java:28)
位于sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)
位于sun.reflect.NativeConstructorAccessorImpl.newInstance(未知源)
位于sun.reflect.delegatingConstructor或AccessorImpl.newInstance(未知源)
位于java.lang.reflect.Constructor.newInstance(未知源)
位于java.lang.Class.newInstance0(未知源)
位于java.lang.Class.newInstance(未知源)
位于org.h2.message.TraceSystem.setLevelFile(TraceSystem.java:197)
... 9更多

我真想知道为什么?

如文件所述,
TRACE\u LEVEL\u FILE=4
选项用于“”。如果您使用它,那么这个“其他日志API”也需要位于服务器端的类路径中。如文档中所述,“要使用SLF4J,所有必需的jar文件都必须位于类路径中。”

服务器端似乎缺少类
org.SLF4J.LoggerFactory
。但是选项
TRACE_LEVEL_FILE=4
当前不影响客户端/服务器案例的客户端。H2服务器是通过H2.bat启动的,这些错误在我运行客户端并由客户端报告后开始显示。