小编hel*_*004的帖子

AppenderSkeleton (Log4j2)

我正在尝试将一个从旧版本的 log4j 扩展org.apache.log4j.AppenderSkeleton到 log4j 2 的类。我正在阅读该类的 JavaDoc,我读到了,

使用此构造的 Appender 在 Log4j 2 中被忽略。

在该课程的网站上。

这是否意味着,如果我使用 Log4j 2,我应该扩展这个类?如果是,我应该使用什么作为替代方案?ConsoleAppender 能解决这个问题吗?

java log4j log4j2

12
推荐指数
1
解决办法
1万
查看次数

添加到列表打印速度为真

我正在尝试将一些字符串值添加到 Velocity 中的列表中。当我运行代码时,它工作正常。但是它添加值的行打印为真。在 Velocity 中总是这样吗?我是 Velocity 模板的新手,所以无法自己弄清楚。

#set ($uniqueInterfaces     =   [])
#if($ipv4interfaceName == $ipv6interfaceName)
    $uniqueInterfaces.add($ipv4interfaceName)
#end
Run Code Online (Sandbox Code Playgroud)

它是带有嵌套 foreach 的较大代码的一部分。它有两个匹配项,所以输出是:

true
true
Run Code Online (Sandbox Code Playgroud)

我根本不需要打印这个真实的!

apache velocity vtl

4
推荐指数
1
解决办法
3091
查看次数

无法在 Velocity 模板中设置 Null

我试图在 Velocity 中将变量设置为 null。我在尝试:

#set ($acessSpeed = null)
Run Code Online (Sandbox Code Playgroud)

我正在阅读速度空支持维基。它说我们可以通过这种方式将值设置为 null。 https://wiki.apache.org/velocity/VelocityNullSupport

但是当我尝试它时,我收到一条错误消息“在......遇到“null””

我遇到的问题是我有一个巨大的模板,其中包含多个 if 块,如果满足条件,则执行这些块。因此,在每个 if 块的末尾,我需要将 accessSpeed 的值设置为 null。

#if (some condition)
     access speed value set here.
.
.
.
#end
// I need to set the access speed value to null here.
#if (some other condition)
    access speed value to be set to something again.
.
.
.
#end
Run Code Online (Sandbox Code Playgroud)

我可以为每个 if 块使用不同的变量,但我想知道是否有更简单的方法来做到这一点。

任何的意见都将会有帮助。

java velocity velocity-tools

3
推荐指数
1
解决办法
5096
查看次数

“POM”类型的依赖关系

我正在尝试使用 ServiceMix 和 ActiveMQ 运行 ESB 系统。但即使在我做到这一点之前,我也有一个关于 POM 依赖类型的问题。我得到的 Maven 依赖项为:

<!-- https://mvnrepository.com/artifact/org.apache.servicemix/servicemix -->
<dependency>
    <groupId>org.apache.servicemix</groupId>
    <artifactId>servicemix</artifactId>
    <version>7.0.1</version>
    <type>pom</type>
</dependency>
Run Code Online (Sandbox Code Playgroud)

现在,当我在包含此依赖项的项目上运行“全新安装”时,我没有看到任何 activeMQ jar 被复制到类路径中或可用于编译(我已经编写了复制依赖项,因此我可以看到包含哪些 jar 文件)。在这种情况下,我是否仍然需要在我的 pom 文件中明确提及 activeMQ 依赖项?喜欢:

<!-- https://mvnrepository.com/artifact/org.apache.activemq/activemq-core -->
<dependency>
    <groupId>org.apache.activemq</groupId>
    <artifactId>activemq-core</artifactId>
</dependency>
Run Code Online (Sandbox Code Playgroud)

任何指导将不胜感激。这个 ServiceMix 因缺乏文档而令人沮丧。

java maven

3
推荐指数
1
解决办法
3240
查看次数

版本健全性检查(Spring/SLF4J)

我正在尝试在 Tomcat 上部署 Spring Boot 应用程序。但不知何故我得到:

Unexpected problem occured during version sanity check
Reported exception:
java.lang.AbstractMethodError: org.apache.logging.slf4j.SLF4JServiceProvider.getRequestedApiVersion()Ljava/lang/String;
        at org.slf4j.LoggerFactory.versionSanityCheck(LoggerFactory.java:297)
        at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:141)
        at org.slf4j.LoggerFactory.getProvider(LoggerFactory.java:421)
        at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:407)
        at io.micrometer.core.util.internal.logging.Slf4JLoggerFactory.<init>(Slf4JLoggerFactory.java:49)
        at io.micrometer.core.util.internal.logging.Slf4JLoggerFactory.<clinit>(Slf4JLoggerFactory.java:46)
        at io.micrometer.core.util.internal.logging.InternalLoggerFactory.newDefaultFactory(InternalLoggerFactory.java:60)
        at io.micrometer.core.util.internal.logging.InternalLoggerFactory.getDefaultFactory(InternalLoggerFactory.java:76)
        at io.micrometer.core.util.internal.logging.InternalLoggerFactory.getInstance(InternalLoggerFactory.java:108)
        at io.micrometer.core.util.internal.logging.InternalLoggerFactory.getInstance(InternalLoggerFactory.java:98)
        at io.micrometer.core.instrument.binder.jvm.JvmGcMetrics.<clinit>(JvmGcMetrics.java:61)
        at org.springframework.boot.actuate.autoconfigure.metrics.JvmMetricsAutoConfiguration.jvmGcMetrics(JvmMetricsAutoConfiguration.java:48)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154)
        at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653)
        at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:486)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
        at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
Run Code Online (Sandbox Code Playgroud)

我在公共类加载器中有一些 SLF4J/Log4J2 jar,它们用于其他一些 Web 应用程序。

喜欢:

log4j-api-2.14.1.jar
log4j-core-2.14.1.jar
log4j-over-slf4j-2.0.0-alpha5.jar
log4j-slf4j18-impl-2.14.1.jar
slf4j-api-2.0.0-alpha5.jar
Run Code Online (Sandbox Code Playgroud)

我认为这是slf4j …

spring log4j2 spring-boot slf4j-api

3
推荐指数
1
解决办法
8574
查看次数

在Python中逐行读取文件

我对Python很陌生。所以我正在尝试我的第一篇基本代码。所以我试图读取文件并在Python中逐行打印。这是我的代码:

class ReadFile(object):

    def main (self):

        readFile = ReadFile()
        readFile.printData()

    def printData(self):

        filename = "H:\\Desktop\\TheFile.txt"

        try:
            with open(filename, 'r') as f:
                value = f.readline()
                print(value)

            f.close()

        except Exception as ex:
            print(ex)
Run Code Online (Sandbox Code Playgroud)

现在,当我运行它时,没有任何输出。所以我尝试调试它。我看到控件从一种方法跳转到另一种方法(主-> printData),然后存在。它在该方法内不执行任何操作。你能告诉我我在做什么错吗?我是新来的,所以对为什么代码表现为这种方式的一点见识也很不错。

python io file python-3.x

1
推荐指数
1
解决办法
7049
查看次数