小编Kam*_*man的帖子

Gradle def vs ext

使用ext.varname和有什么区别def varname.例如,以下代码似乎工作相同:

task copyLicenses {
    def outDir = project.buildDir.absolutePath + '/reports/license/'

    doLast {
        copy {
            from 'licenses'
            into outDir
            include '*'
        }
Run Code Online (Sandbox Code Playgroud)

似乎工作完全一样

task copyLicenses {
    ext.outDir = project.buildDir.absolutePath + '/reports/license/'

    doLast {
        copy {
            from 'licenses'
            into outDir
            include '*'
        }
Run Code Online (Sandbox Code Playgroud)

gradle

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

\n在heredoc变量中

有没有办法让Bash heredoc在heredoc中解释'\n \'?

我在循环中有一个迭代构建的字符串,类似于

for i in word1 word2 word3
do
        TMP_VAR=$i
        ret="$ret\n$TMP_VAR"
done
Run Code Online (Sandbox Code Playgroud)

然后我想在heredoc中使用创建的字符串:

cat <<EOF > myfile
HEADER
==
$ret
==
TRAILER
EOF
Run Code Online (Sandbox Code Playgroud)

但是我想将"\n"字符解释为换行符,以便输出为

HEADER
==
word1
word2
word3
==
TRAILER
Run Code Online (Sandbox Code Playgroud)

代替

HEADER
==
\nword1\nword2\nword3
==
TRAILER
Run Code Online (Sandbox Code Playgroud)

可能吗?或者我应该以某种方式构建我的初始字符串?

variables bash escaping heredoc

9
推荐指数
4
解决办法
7701
查看次数

在Intellij Idea中切换活动工具窗口中的选项卡

在Intellij中,是否有任何键映射可在活动工具窗口中的选项卡之间切换?例如,我在调试工具窗口中,您有标签,例如Deployment,Server,Output,Frames,Variables,你甚至可以将它们配置为嵌套.例如Frames,OutputServer标签中有和作为子标签.有没有组合键同样之间的切换这些标签之间切换Tool Windows and EditorCtrl+ Tab

keymapping intellij-idea

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

使用报告独立运行 JUnit 测试

如何在没有项目源代码的情况下运行 junit 测试并从它们那里获得一些不错的(例如类似 gradle 的 html)报告(例如测试 + 打包在 uber jar 中的依赖项)?

我可以使用 maven 程序集插件将测试和 maven 打包到可运行的 jar 中,在How to run JUnit test cases from the command line 的帮助下运行这个 jar但是如何创建一些不错的测试结果报告呢?

java junit integration-testing junit4

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

如果删除空格,DateTimeFormatter 解析具有可选时间部分的字符串将失败

我的另一个关于如何将仅日期字符串解析为 LocalDateTime 的问题之后,在尝试使用模式 yyyyMMdd[HHmmss] 解析字符串 20120301122133 时,我收到错误。奇怪的是,使用模式 yyyyMMdd[ HHmmss] 解析 20120301 122133 效果很好。

所以这段代码工作正常

LocalDateTime.parse(
     "19940513 230000", 
     new DateTimeFormatterBuilder()
        .appendPattern("yyyyMMdd[ HHmmss]")
        .parseDefaulting(ChronoField.HOUR_OF_DAY, 0)
        .parseDefaulting(ChronoField.MINUTE_OF_HOUR, 0)   
        .parseDefaulting(ChronoField.SECOND_OF_MINUTE, 0)
        .toFormatter()
)
Run Code Online (Sandbox Code Playgroud)

而这个失败了

LocalDateTime.parse(
    "19940513230000", 
    new DateTimeFormatterBuilder()
        .appendPattern("yyyyMMdd[HHmmss]")
        .parseDefaulting(ChronoField.HOUR_OF_DAY, 0) 
        .parseDefaulting(ChronoField.MINUTE_OF_HOUR, 0)         
        .parseDefaulting(ChronoField.SECOND_OF_MINUTE, 0)
        .toFormatter()
)
Run Code Online (Sandbox Code Playgroud)

我应该如何使用java 8时间API解析格式为yyyyMMdd[HHmmss]的字符串,即格式为yyyyMMddHHmmss且带有可选时间部分的字符串?

解析模式是一个可配置选项,因此仅在运行时才知道。因此,我无法用硬编码的 DateTimeFormatterBuilder 调用替换 String 模式。

java java-8 java-time

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

仅将日期解析为Java 8中的LocalDateTime

我需要解析一个有时作为日期而有时作为日期/时间的字段.是否可以使用Java 8时间API为此使用单一数据类型?目前,我尝试使用LocalDateTime,但是对于以下调用,LocalDateTime.parse("1986-04-08", DateTimeFormatter.ofPattern("yyyy-MM-dd")) 我得到了一个

java.time.DateTimeException: Unable to obtain LocalDateTime from TemporalAccessor: {},ISO resolved to 1986-04-08 of type java.time.format.Parsed
Run Code Online (Sandbox Code Playgroud)

这是一些通用解析器的一部分,它接受日期/日期时间解析模式作为配置选项.因此,例如遵循具有硬编码解析模式的解决方案

if ("yyyy-MM-dd".equals(pattern)) {
    LocalDate.parse(value, DateTimeFormatter.ofPattern("yyyy-MM-dd"))).atStartOfDay()
}
Run Code Online (Sandbox Code Playgroud)

对我来说不是一个选择.

任何其他建议如何以干净的方式编码它是受欢迎的.

java java-8 java-time

4
推荐指数
2
解决办法
3302
查看次数

循环时BASH中echo / printf中没有换行符

为什么在执行以下脚本时,每个printf(也尝试与echo一起)打印在同一行上?

function read_dom () {
    local IFS=\>
    read -d \< ENTITY CONTENT
}

cat my_xml_file.xml | \
{   while read_dom; do
        printf "(entity:content %s:%s)" $ENTITY $CONTENT
}
Run Code Online (Sandbox Code Playgroud)

现在,这将产生单行输出:

(entity:content member:)(entity:content name:id)(entity:content /name:)
Run Code Online (Sandbox Code Playgroud)

如何将其更改为多行,例如:

(entity:content member:)
(entity:content name:id)
(entity:content /name:)
Run Code Online (Sandbox Code Playgroud)

bash printf newline echo while-loop

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

忽略了integrationTestCompile gradle 依赖项

根据几篇博客文章,我尝试在 gradle 中创建一个单独的源文件夹用于集成测试。我还想在我的 integrationTest 任务中添加一些额外的(arquillian)依赖项,但是 integrationTestCompile 似乎被忽略了,并且我收到一个编译错误,附加依赖项未解决。当我将依赖项更改为 testCompile 时,它​​工作正常。为什么会这样以及如何改变它?我的简单测试类:

//compilation fails with  [Static type checking] - The variable [ArquillianSputnik] is undeclared
@TypeChecked
@RunWith(ArquillianSputnik)
class TestSpec extends Specification {


}
Run Code Online (Sandbox Code Playgroud)

和 gradle.build:

apply plugin: 'groovy'
apply plugin: 'war'

war.dependsOn 'native2ascii'

task native2ascii << {

    ant.delete() {
        fileset(dir: "${processResources.destinationDir}") {
            include(name: '*.properties')
        }
    }
    ant.native2ascii(src: 'src/main/resources/',
            dest: "${processResources.destinationDir}",
            includes: '**/*.properties',
            encoding: 'UTF-8')
}

repositories {
    mavenCentral()
    maven {
        url 'http://repository.jboss.org/nexus/content/groups/public'
    }
    mavenLocal()
}

sourceSets.main.java.srcDirs = []
sourceSets.main.groovy.srcDirs += ["src/main/java"]

sourceSets {
    integrationTest …
Run Code Online (Sandbox Code Playgroud)

integration-testing dependency-management gradle

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

org.apache.cxf.ws.policy.PolicyException:无法满足任何策略选择

我想用 JUnit 和 Apache CXF 编写一个简单的集成测试来测试一些支持 WS-Security 的服务。当我尝试运行我的代码时:

MyService myService = new myWsService(MY_SERVICE_WSDL).getMyWs()
Client client = ClientProxy.getClient(myService);
Map<String, Object> ctx = ((BindingProvider) myService).getRequestContext();
ctx.put("ws-security.callback-handler", new KeystorePasswordCallback());
ctx.put("ws-security.signature.crypto", new MyMerlinImpl());
Run Code Online (Sandbox Code Playgroud)

MyMerlinImpl 只是在重写loadProperties方法中传递所需的 Merln.* 属性值,

我得到:

sie 12, 2015 11:52:10 AM org.apache.cxf.ws.policy.AssertionBuilderRegistryImpl handleNoRegisteredBuilder
WARNING: No assertion builder for type {http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702}AsymmetricBinding registered.
sie 12, 2015 11:52:10 AM org.apache.cxf.ws.policy.AssertionBuilderRegistryImpl handleNoRegisteredBuilder
WARNING: No assertion builder for type {http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702}InitiatorToken registered.
sie 12, 2015 11:52:10 AM org.apache.cxf.ws.policy.AssertionBuilderRegistryImpl handleNoRegisteredBuilder
WARNING: No assertion builder for type {http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702}X509Token …
Run Code Online (Sandbox Code Playgroud)

java ws-security integration-testing web-services cxf

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

@Qualifier("beanName") 和 @Component("beanName") 的区别

using@Qualifier("beanName")和之间有什么区别@Component("beanName")吗?如果没有,是否有首选方法?

spring

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

内容:飞碟@page @top-left中的url('image.png')

飞碟是否支持将图像放入 CSS3边距框中

我尝试过类似的东西

@page {
    @top-left {
        content: url('/resources/media/image.png');
    }
}
Run Code Online (Sandbox Code Playgroud)

但这似乎不起作用。有什么解决方案可以将图像放在我想要的位置吗?

css image flying-saucer xhtmlrenderer

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