小编use*_*331的帖子

如何让Spring启动使用log4j.xml配置文件?

我有一个简单的Spring Boot应用程序,它构建为一个jar文件.我在src/main/resources/log4j.xml中有一个log4j.xml文件,看起来像这样(来自log4j docs的基本样本文件):

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
    <appender name="stdout" class="org.apache.log4j.ConsoleAppender">
        <layout class="org.apache.log4j.PatternLayout">
            <!-- Pattern to output the caller's file name and line number -->
            <param name="ConversionPattern" value="%5p [%t] (%F:%L) - %m%n"/>
        </layout>
    </appender>
    <appender name="R" class="org.apache.log4j.RollingFileAppender">
        <param name="file" value="/tmp/logs/sample.log"/>
        <param name="MaxFileSize" value="100KB"/>
        <!-- Keep one backup file -->
        <param name="MaxBackupIndex" value="1"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%p %t %c - %m%n"/>
        </layout>
    </appender>
    <root>
        <priority value="debug"/>
        <appender-ref ref="stdout"/>
        <appender-ref ref="R"/>
    </root>
</log4j:configuration>
Run Code Online (Sandbox Code Playgroud)

记录只会进入控制台(/ tmp /logs/samples.log永远不会被创建),因为它忽略了log4j.xml文件. …

logging log4j spring-boot

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

如何在Linux上使用x86 Android模拟器?

最新的Android sdk有一个x86模拟器,可以帮助提高性能.我该如何为它创建图像?当我去创建一个新的avd时,我看到CPU/ABI的下拉列表,但它被设置为"ARM"并被禁用.

android android-emulator android-sdk-2.3 android-sdk-tools

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

带有干扰分析仪的Lucene荧光笔

我使用Lucene的Highlighter类突出显示匹配搜索结果的片段,效果很好.我想从使用StandardAnalyzer的搜索切换到EnglishAnalyzer,它将执行术语的限制.

搜索结果很好,但现在荧光笔并不总是找到匹配.这是我正在看的一个例子:

document field text 1: Everyone likes goats.

document field text 2: I have a goat that eats everything.
Run Code Online (Sandbox Code Playgroud)

使用EnglishAnalyzer并搜索"goat",两个文档都匹配,但是荧光笔只能从文档2中找到匹配的片段.有没有办法让两个文档的荧光笔返回数据?

我理解令牌的字符是不同的,但是相同的令牌仍然存在,因此它只是突出显示该位置存在的任何令牌似乎是合理的.

如果有帮助,这是使用Lucene 3.5.

lucene full-text-search highlighting analyzer snowballanalyzer

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

使用Robolectric测试打开原始资源

我有一个扩展SQLiteOpenHelper的类,它打开一个xml文件来填充SQLite数据库.我正在为它创建单元测试,但我被困在需要打开xml输入资源的地方:

context.getResources().getXml(R.xml.sample_input);
Run Code Online (Sandbox Code Playgroud)

调试它,我可以看到context.getResources()是非null并且是一个shadow对象,但context.getResources().getXml(R.xml.sample_input)返回null.

阅读我看到人们提到我需要创建一个影子资源,但我没有看到任何解释如何为这样的情况做这件事.

如果它有帮助这就是我的自定义测试运行器类目前的样子

public class CustomTestRunner extends RobolectricTestRunner {
    public CustomTestRunner(Class<?> testClass) throws InitializationError {
        super(testClass, new File("src/main/android/"));
    }
}
Run Code Online (Sandbox Code Playgroud)

我缺少什么让我的测试中的资源工作?

android robolectric android-resources

5
推荐指数
0
解决办法
619
查看次数

spring boot gradle文件中的"tag :: ..."语法是什么?

使用Spring Boot和Gradle时,依赖关系中有一些注释,如"tag :: jetty []"和"end :: jetty []".鉴于它们的语法,我假设它们被类似spring boot gradle插件的解析.这些怎么办?他们是否需要使弹簧靴执行器和嵌入式码头工作?

以下文档中的示例(请参阅依赖关系):

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:1.1.10.RELEASE")
    }
}

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'idea'
apply plugin: 'spring-boot'

jar {
    baseName = 'gs-spring-boot'
    version =  '0.1.0'
}

repositories {
    mavenCentral()
}

dependencies {
    // tag::jetty[]
    compile("org.springframework.boot:spring-boot-starter-web") {
        exclude module: "spring-boot-starter-tomcat"
    }
    compile("org.springframework.boot:spring-boot-starter-jetty")
    // end::jetty[]
    // tag::actuator[]
    compile("org.springframework.boot:spring-boot-starter-actuator")
    // end::actuator[]
    testCompile("junit:junit")
}

task wrapper(type: Wrapper) {
    gradleVersion = '1.11'
}
Run Code Online (Sandbox Code Playgroud)

gradle spring-boot

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

适用于db.StringListProperty的App Engine NDB替代方案

我需要存储一个有序的字符串列表,我正在尝试开始使用ndb.以前我使用过db.StringListProperty.但这在ndb中不可用,那么建议的替代方案是什么?看一下ndb类型,我想我需要使用PickleProperty.有什么更合适的吗?

python google-app-engine google-cloud-datastore

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

使用Webpacker在Rails 5.2上进行基础测试

如何使用webpacker在Rails 5.2应用程序中设置Foundation scss和JavaScript?

这是我到目前为止所做的:

使用webpack选项创建新的rails应用程序:

rails new myapp --webpack
Run Code Online (Sandbox Code Playgroud)

做webpacker设置:

rails webpacker:install
Run Code Online (Sandbox Code Playgroud)

添加"网站基础":

yarn add jquery foundation-sites
Run Code Online (Sandbox Code Playgroud)

从那里我有点丢失正确的放置文件的地方,要添加的配置,以及应该去哪里.我有点期待在webpack.config.js某个地方看到一个文件.我在webpacker自述app/javascript/src/application.css文件中看到有文件.我是否只是从那里开始引用其他文件,它们最终会被编译/连接在一起?

ruby-on-rails zurb-foundation webpack webpacker

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

寻找Google App Engine的非规范化建议

我正在研究一个将在GAE上运行的系统,它将有几个相关的实体,我不确定存储数据的最佳方法.这篇文章是对其他可能有类似经历的人的建议的请求....

系统将拥有用户,包括个人资料数据和图像.这些用户将能够创建"事件"并向其添加日记条目.出于系统的目的,"事件"可能在其中包含1或2个日记帐分录,并且任何超过10个的事件都可能永远不会发生.其他用户也可以为用户的条目添加评论,其中流行的评论可能有数百甚至数千条评论.当随机访问者使用该系统时,他们应该能够看到最新的事件(最新的事件,由其中包含最新日记条目的人定义),按标签搜索以及非常有效的基本文本搜索.然后,在选择要查看的事件时,应显示所有日记帐分录和所有用户评论,其中包含用户图像和评论.用户还应该拥有一种自我管理页面,以查看/修改/删除他们的事件,以及查看/修改/删除他们对其他事件所做的评论.因此,在普通的RDBMS上执行所有这些操作只会查询几个表中的一些大连接.在GAE上,它显然需要以不同的方式工作.以下是我对实体设计的初步想法:

  • 事件实体 - 标识的id,名称,timstamp,列表属性,视图计数,创建者的用户名,创建者的配置文件图像ID,它包含的日记条目数,它包含的总评论数,包含日记条目的最后更新的时间戳,列表属性用于搜索的索引词(从包含的日记条目中的文本构建/更新)
  • JournalEntry实体 - 时间戳,日记文本,事件名称,创建者的用户名,创建者的个人资料图像ID,评论的列表属性(包含评论者用户名和图像ID)
  • 用户实体 - 用户名,密码哈希,电子邮件,订阅事件的列表属性,创建日期的时间戳,图像ID,发布的评论数,创建的事件数,创建的日记条目数,上次日记活动的时间戳
  • UserComment实体 - 用户名,评论的事件ID,评论的事件标题
  • TagData实体 - 标记名称,带有标记的事件计数

所以,我想听听人们在这里对设计的看法,以及应该做些什么改进来帮助它很好地扩展.谢谢!

google-app-engine database-design google-cloud-datastore

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

为什么这些base64编码输出在给定相同的输入字符串时会有所不同?

当从相同的输入字符串获取bas64编码的字符串时,我发现JavaScript,Groovy和Go具有相同的结果,但GNU base64略有不同.这是为什么?

JavaScript(nodejs v0.10.33):

new Buffer('Laurence Tureaud is Mr. T').toString('base64');
TGF1cmVuY2UgVHVyZWF1ZCBpcyBNci4gVA==
Run Code Online (Sandbox Code Playgroud)

Groovy(Java 8上的2.3.7):

'Laurence Tureaud is Mr. T'.bytes.encodeBase64().toString()
TGF1cmVuY2UgVHVyZWF1ZCBpcyBNci4gVA==
Run Code Online (Sandbox Code Playgroud)

去(1.4):

b64.StdEncoding.EncodeToString([]byte("Laurence Tureaud is Mr. T"))
TGF1cmVuY2UgVHVyZWF1ZCBpcyBNci4gVA==
Run Code Online (Sandbox Code Playgroud)

GNU base64(带有UTF-8术语字符集的GNU coreutils 8.12.197-032bb):

echo 'Laurence Tureaud is Mr. T' | base64
TGF1cmVuY2UgVHVyZWF1ZCBpcyBNci4gVAo=
Run Code Online (Sandbox Code Playgroud)

javascript groovy base64 gnu go

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