草庐IT

java - 为什么 Log4j 认为我的项目在 Servlet 环境中运行

我有一个简单的java项目(maven)。它构建了一个jar,我们在其上执行main方法。但是当我在项目上运行mvncleantest时,我从log4j得到一条日志行说INFOLog4jappearstoberunninginaServletenvironment,butthere'snolog4j-webmoduleavailable.Ifyouwantbetterwebcontainersupport,pleaseaddthelog4j-webJARtoyourwebarchiveorserverlibdirectory.log4j2.xml文件位于src/main/resourc

java - log4j.properties 在可执行 jar 中不起作用

我正在使用eclipse,我已将log4j.properties放在项目目录中,我通过调用访问它PropertyConfigurator.configure("log4j.properties");这在Eclipse中工作正常,但是当我将项目提取为可执行Jar并在另一台机器上运行它时,我收到一条错误消息,指出它找不到log4j.properties。有什么解决办法? 最佳答案 发生了什么PropertyConfigurator.configure(String)从文件系统加载和读取文件。您的属性文件位于项目目录中,当您从eclips

java.io.WriteAbortedException : writing aborted; java. io.NotSerializableException : org. apache.log4j.Logger

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭9年前。当我尝试将用户登录到我的系统时,我在Tomcat中遇到此错误:org.springframework.web.context.ContextLoader-RootWebApplicationContext:initializationcompletedin1967msSau14,20137:39:17PMorg.apache.catalina.session.StandardManagerdoLo

neo4j&用3.2的螺栓

我有一个在Linux服务器上运行的Neo4J(CE),只有一个端口打开(我用于HTTPS连接的一个端口)。我很难打开其他任何港口。使用Neo4J3.0,它的工作就像魅力。我刚刚安装了3.2,我无法再管理任何无法连接到Neo4J浏览器。我得到了UI,但是当我尝试“:服务连接”时,我现在得到了一个“主机”字段(与用户名和密码一起)。我尝试了许多组合,并且我总是收到消息“n/a”:WebSocket连接失败。由于您的Web浏览器中的安全性限制,因此该NEO4J驱动程序无法使用故障的原因。(...)”。默认情况下,主机字段是“bolt://[my-server-name]:7687”,这是从我的浏览器

java - 如何摆脱 "HHH90000003: Use of DOM4J entity-mode is considered deprecated"

我刚刚将项目的hibernate版本升级到5.0.0.FINAL。但是我意识到,我收到了这个警告。我想摆脱它。不知道会不会影响我的申请。2015-08-2414:29:22.235WARN---[main]org.hibernate.orm.deprecation:HHH90000003:UseofDOM4Jentity-modeisconsidereddeprecated由于我从来没有明确地使用过entity-mode,所以我在网上搜索了但几乎没有关于它的信息。这是EntityMode枚举。由于不再有DOM4J模式,我怀疑如果我在5.0.0版本中继续使用hibernate,我可能会在

Java8 Effectively Final compile time error on non final variable

我正在尝试将java8forEach循环中的boolean变量更改为非最终的true。但我收到以下错误:在封闭范围内定义的局部变量必须是最终的或实际上是最终的。如何解决这个错误?代码:booleanrequired=false;这是我在函数中创建的变量。现在当我试图改变它时:map.forEach((key,value)->{System.out.println("Key:"+key+"Value:"+value);required=true;});我收到错误:在封闭范围内定义的局部变量必须是最终的或实际上是最终的。为什么会出现这个错误,如何解决? 最佳答案

java - 执行 TestNG 测试时捕获 Log4j 输出

我正在执行TestNG测试,日志输出设置为DEBUG,因此如果出现故障,我可以检查到底出了什么问题。问题是输出非常冗长,运行起来很烦人。我想捕获所有Log4J日志记录事件——这很容易——并且只在测试失败时打印它们。此外,我需要考虑@Before/@After方法并为它们打印输出。假设我已经有一个Log4JLoggingEvent列表,我如何才能仅在Test/After/在方法失败之前? 最佳答案 使用Reporter.log(str)在报告中记录消息。@AfterMethodpublicvoidprintLOGonFailure(I

java - yammer @Timed 将值保留为零

这是我努力使用yammer计时注释的后续行动,如here所述.我的spring上下文文件只有:我有以下类(class):importcom.yammer.metrics.annotation.ExceptionMetered;importcom.yammer.metrics.annotation.Metered;importcom.yammer.metrics.annotation.Timed;...@ComponentpublicclassGetSessionServletextendsHttpServlet{privatefinalstaticLoggerlog=LoggerFac

java - 让 log4j2 与 eclipse 一起工作

我知道有很多问题被问到这个问题,但我已经尝试让它工作几天了,但当我开始时我并没有更进一步。我尝试在eclipsevm参数中使用-Dlog4j.configuration=file:/path/to/log4j.properties和-Dlog4j.debug(在debug&运行)并没有输出我尝试过使用.properties和.xml但不开心尝试将.xml和.properties文件放在根目录、src和我添加到我的类路径的外部文件夹中......仍然没有快乐我认为它在另一个lib/jar中使用了另一个.xml或.properties文件,但是因为我无法进行任何调试,所以我发现很难跟踪我在

java - Tess4j 不使用它的 tessdata 文件夹

我正在使用tess4j,Tesseract的java包装器。我也安装了普通的Tesseract。我不确定tess4j是如何工作的,但由于它带有一个tessdata文件夹,我可以假设您会将语言数据文件放在那里。但是,tess4j仅在语言数据文件位于“真实”tessdata文件夹(tesseract附带的文件夹,而不是tess4j)中时才有效。如果我删除该文件夹,我会收到此错误消息:ErroropeningdatafileC:\ProgramFiles\Tesseract-OCR\tessdata/jpn.traineddataPleasemakesuretheTESSDATA_PREFI