小编Bas*_*ers的帖子

如何跨文件提取方法?

在我的项目的所有java文件中,我想替换出现的:

myObject.getName() == null
Run Code Online (Sandbox Code Playgroud)

接着就,随即:

myObject.hasName()
Run Code Online (Sandbox Code Playgroud)

IntelliJ IDEA是否有任何行动或策略可以做到这一点?

  • 我希望它特定getName我的类的方法MyClass而不是替换代码,它引用getName其他类调用的方法.
  • 我希望它能找到尽可能多的匹配.它不应该关心额外的空格,换行符等.如果变量有另一个名称(如myObjobjX),它也应该工作.getObject().getName()也应该找到类似的电话.(搜索必须关注语义).
  • 我希望它快速而不是要求我逐个完成数百场比赛.

java refactoring intellij-idea structural-search

12
推荐指数
2
解决办法
419
查看次数

如何在Intellij中进行结构搜索和替换

我正在将Junit测试从Junit v3迁移到Junit v4.

我希望使用搜索并替换结构上的"srs"来在使用我最喜欢的IDE Intellij开始的所有方法之前添加@Test注释.

我只是不知道怎么做...我可以创建一个查询,找到没有注释的所有方法(在Intellij中有一个示例捆绑)但是当用于替换时,我的类只被替换为方法名字或没有找到.

也许正则表达式更容易:-)

/康斯坦丁

java ide intellij-idea structural-search

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

IntelliJ正在生成私有的getter

我的IntelliJ几周来一直在生成私有的getter,这很奇怪,因为它不尊重默认模板:

public ##
#if($field.modifierStatic)
  static ##
#end
$field.type ##
#set($name = $StringUtil.capitalizeWithJavaBeanConvention($StringUtil.sanitizeJavaIdentifier($helper.getPropertyName($field, $project))))
#if ($field.boolean && $field.primitive)
  #if ($StringUtil.startsWithIgnoreCase($name, 'is'))
    #set($name = $StringUtil.decapitalize($name))
  #else
    is##
#end
#else
  get##
#end
${name}() {
  return $field.name;
}
Run Code Online (Sandbox Code Playgroud)

我一直在寻找可能导致这种情况但没有结果的一段时间.这是一个错误还是一个功能?

java intellij-idea

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

使用IntelliJ查找具有特定参数类型的所有方法调用

我有这个相当大的代码库(+/- 500k行).我正在查找它以查找使用单个参数的所有方法调用,并且该参数是特定类型.

这意味着,我希望能够找到如下方法调用:

public class Foo { }
public class Bar { }

public class Doer{
  public void doSomethingFoo(Foo foo) {  }
  public void doSomethingObject(Object object) {  }
}

public class Usage {
  Doer doer = new Doer();
  public doSomething() {
    Foo anObject = new Foo();
    Bar bar = new Bar();

    doer.doSomethingFoo(anObject);
    doer.doSomethingObject(anObject);

    doer.doSomethingObject(bar);
  }
}
Run Code Online (Sandbox Code Playgroud)

由于两个doer.doSomethingFoo(anObject)doer.doSomethingObject(anObject)被称为,这两个声明,应搜索将返回.同样,doer.doSomethingObject(bar)不归还.当然,我不知道doer存在.

我正在尝试使用IntelliJ的结构搜索来执行此操作.我使用了以下模板$Instance$.$Method$($Parameter$),其中包含以下参数:

$Instance$  -> Text/regexp   = .*
$Method$    -> Text/regexp   = .*
$Parameter$ -> …
Run Code Online (Sandbox Code Playgroud)

intellij-idea structural-search

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

显示使用自定义注释注释的方法/构造函数的警告?

我有一个使用 ORM 解决方案的应用程序,该解决方案要求将默认构造函数保留在类中。为了防止我意外使用这个默认构造函数,我想用警告来突出显示它的任何用法。

我目前正在使用“@DoNotUse”之类的自定义注释来注释它,但我不知道如何让 Intellij 用警告来标记其用法。

我不相信结构搜索检查可以解决这个问题。

我现在唯一的希望是插件吗?

编辑:@Deprecated由于有人显然没有阅读这个问题,我并不是在寻找导致代码中的语句被标记为警告的原因,我正在寻找一种使用其他自定义注释复制此效果的方法。

java annotations intellij-idea structural-search

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

IntelliJ中是否有一种方法可以对方法进行使用搜索,并通过传递给方法的特定参数对其进行过滤?

我的Service类中有一个方法,它为任何域对象执行hibernate更新:

update(Object obj)
Run Code Online (Sandbox Code Playgroud)

它在我的项目中用于不同类型的对象的批次调用.我想在调用特定域对象时找到此方法的所有用法.即调用方法调用wich执行我的Title对象的更新:

serviceClass.update(Title title)
Run Code Online (Sandbox Code Playgroud)

我正在使用IntelliJ作为我的IDE,我想知道是否有办法找到所有这些用法.有没有人有IDEA如何做到这一点?

罗恩,非常感谢

refactoring intellij-idea structural-search

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

如何在页面刷新时通过javascript/jquery保持对DOM的更改

我的问题是,当我点击链接(例如第二页)时,它将在屏幕上显示第二页.但是当我重新加载页面时,当前页面没有保存,而是恢复到默认页面.

如何将所需页面从刷新保留到默认页面?

JavaScript的:

<script type="text/javascript"> 
    $(function(){
        $('.one').show();
        $('.two').hide();
        $('.three').hide();
        $('#show_one, #show_one1').click(function(){
            $('.one').show();
            $('.two').hide();
            $('.three').hide();
            $('.modal').modal('hide');
            return false;
        });
        $('#show_two, #show_two2').click(function(){
            $('.one').hide();
            $('.two').show();
            $('.three').hide();
            $('.modal').modal('hide');
            return false;
        });
        $('#show_three, #show_three3').click(function(){
            $('.one').hide();
            $('.two').hide();
            $('.three').show();
            $('.modal').modal('hide');
            return false;
        });
    });
</script>
Run Code Online (Sandbox Code Playgroud)

HTML:

<nav class="navbar navbar-default" role="navigation">
        <div class="container-fluid">

        <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
            <ul class="nav navbar-nav">
                <li><a href="" id="show_one"> One</a></li>
                <li><a href="" id="show_two"> Two</a></li>
                <li><a href="" id="show_three"> Three</a></li>
            </ul>

            <ul class="nav navbar-nav navbar-right">
                <a data-toggle="modal" data-target="#myModal"> Modal Dialog</a>
            </ul>
        </div>
        </div>
    </nav> …
Run Code Online (Sandbox Code Playgroud)

html javascript jquery twitter-bootstrap twitter-bootstrap-3

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

有什么方法可以在 Intellij 中在结构上搜索 Scala 或 Python 源代码?

在 IJ 版本上2016.2 ,会出现以下对话框:

在此处输入图片说明

它包括javahtml衍生品以及其他语言的一个小品种。但pythonscala明显缺失。是否有任何解决方法来获得此类功能?

intellij-idea structural-search

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

结构搜索和Groovy Script约束替换

在结构搜索和替换中,如何搜索给定的整数给定方法参数是否大于或等于给定值?或者这甚至可能吗?

例如:假设我有100个这种方法的用法

public void sendString(String msg, int interfaceId){ //doing stuff... }
Run Code Online (Sandbox Code Playgroud)

我想检查一个固定的(无变量号)是否传递给interfaceId是否大于或等于给定的数字.

java search groovy intellij-idea structural-search

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

在IntelliJ中查找整个项目中的所有匿名类

IntelliJ是否可以在代码中找到定义匿名类的所有位置?

我只是在寻找而不是改变。我并不是在问要转换为lambda,这与lambda无关。

java intellij-idea anonymous-class structural-search

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