小编kli*_*net的帖子

在IntelliJ IDEA 12中保存时删除尾随空格

在IntelliJ IDEA中保存时是否可以自动删除尾随空格?我知道有一些解决方法,例如,使用git修剪提交时的空白.也许这个问题是一个重复的这一个,但我希望这可以在不设置键盘快捷键和宏命令来完成.

git reformat intellij-idea

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

IntelliJ Idea(调试)条件断点依赖于其他断点

我想在IntelliJ Idea中设置一个只有活动的调试断点,如果激活了另一个先前的断点.例如,我在第10行有一个断点B1,在第20行有另一个断点B2.即使B2s条件为真,调试器只应在B2s之前B1s条件为真时停止.

在Idea中这样的事情可能吗?

更新:

目前我正在使用此解决方法:

  1. 设置两个断点
  2. 禁用断点#2
  3. 启动调试器,等到断点#1处于活动状态
  4. 激活断点#2

我希望有一个更清洁的方法来做到这一点:)

debugging breakpoints intellij-idea conditional-breakpoint

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

FreeMarker:使用宏时保持标识

我正在使用FreeMarker模板引擎从Web服务的抽象描述中生成一些php类.我的问题是,当我在FreeMarker模板中调用一个宏时,宏在宏调用之前插入没有左手空格的文本.

exampleTemplate.ftl:

<?php
    class ${class.name} {
        <@docAsComment class.doc/>

        <#list class.fields as field>
        $${field.name};
        </#list>
        <#-- ... -->
    }
?>

<#macro docAsComment doc>
/*
<#if doc.title != "">
* ${doc.title}
</#if>
<#list doc.content as content>
<#if content != ""> * ${content}</#if>
</#list>
*/
</#macro>
Run Code Online (Sandbox Code Playgroud)

这将生成如下内容:

<?php
    class foo {
/*
 * foo
 * bar foo, bla
 */          

    $a;
    $b;
    }
?>
Run Code Online (Sandbox Code Playgroud)

一种解决方案是,将前导空格作为参数提交给宏,但这使得模板更难以理解.有更好的解决方案吗?

java code-generation freemarker

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

Java 中清除嵌套 Map 的好方法

public class MyCache {

    AbstractMap<String, AbstractMap<String, Element>> cache = new TreeMap<String, AbstractMap<String,
            Element>>();

    public Boolean putElement(String targetNamespace, Element element) {
        ...
    }

    public void clear() {
        cache.clear();
    }

    // is it better this way?

    public void deepClear() {
        for(AbstractMap<String, Element> innerMap : cache.values()) {
            innerMap.clear();
        }
        cache.clear();
    }
}
Run Code Online (Sandbox Code Playgroud)

是否有必要迭代根映射的值并首先清除嵌套在根中的所有映射,或者清除最外面的映射就足够了?我的主要问题是,这两种方法对 JVM 的内存消耗有什么区别吗?

java maps jvm memory-leaks

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