IntelliJ에서 한 줄에 대한 경고 비활성화


80

IntelliJ가 경고를 표시하는 Java 코드 줄이 있습니다. 다른 줄에 표시된 경고에 영향을주지 않고 특정 줄의 경고를 어떻게 무음으로 설정합니까?

이 질문에서 실제 경고가 무엇인지는 관련이 없습니다. 이제 Java 코드의 특정 부분의 품질을 향상시키는 방법에 대한 조언을 구하는 것이 아니지만 일반적으로 IntelliJ가 특정 경고를 표시하는 것을 방지하는 방법을 알고 싶습니다. 자바 소스 라인.


그것은 누군가가 대답하기에 충분하지 않습니다. 무슨 경고? 무슨 일이야?
Jim Garrison

경고에 대한 자세한 정보가 도움이 될 것입니다. 경고는 이유가 있으며 경고를 무시하는 것보다 근본적인 문제를 해결하는 것이 더 낫습니다.
Freiheit

8
이 질문에서 특정 경고는 관련이 없습니다. 가능한 모든 경고에 대해 IntelliJ가 특정 줄에 대해보고 한 경고를 비활성화하려면 일반적으로 무엇을 할 수 있는지 알고 싶습니다 (코드 수정 외에도).
kat

예를 들어 : Intellij password.replaceAll(".","*")는 일반적으로 실수라고 불평합니다 . 당신이 의미한다고 생각합니다 replaceAll("\.",...). 감사합니다. 이제 경고를 인정하고 억제하고 싶습니다. 나는 그것이 주위에 매달리는 것을 원하지 않는다.
Florian F

답변:


81

대부분 IntelliJ에서는 및 라인을 클릭 할 수 있으며 Alt+Enter, 특히 경고를 억제하는 옵션이 있습니다.


11
제 경우에는 그런 옵션이 없습니다. 경고의 근본 원인을 수정하는 몇 가지 옵션을 제공하지만 지금은 원하지 않습니다. 경고를 없애고 싶을뿐입니다.
kat

24
@kat, 오른쪽 화살표 키를 눌러 검사 하위 메뉴를 열어야합니다. 여기에서 현재 행에 대해 표시하지 않을 수 있으며 주석이 자동으로 추가됩니다.
CrazyCoder

6
Ryan Stewart 및 CrazyCoder가 작성한대로 작동합니다. F2를 눌러 다음 경고로 이동 한 다음 Alt-Enter를 눌러 경고를 확인한 다음 오른쪽 화살표 키를 눌러 문제 해결 옵션을 가져온 다음 적절한 무시 ... 옵션을 선택합니다. 참고로 경고 선 위에 마우스를 올리면 경고를 제거 할 수없는 툴팁이 표시됩니다.
kat

3
현재 IntelliJ에서는 "Analyze": "Inspect Code"를 사용하여 아래쪽 창을 열 수 있습니다. 오른쪽 창에는 편리한 "Suppress for statement"가 오른쪽에 있습니다. 하지만 큰 화면과 마우스가 필요합니다.
Tino

53

Ryan Stewart의 답변을 확장하여 IntelliJ에서을 사용 Alt+Enter하고 첫 번째 하위 메뉴를 선택한 다음 마지막 항목을 선택하십시오 Suppress for statement.

여기에 이미지 설명 입력

최신 정보

IntelliJ IDEA 13을 사용하여 "Suppress for statement with comment"라는 추가 메뉴 항목을 발견했습니다. 이것은 IntelliJ 스타일을 사용합니다 //noinspection unchecked. "Suppress for statement"를 선택하면 IntelliJ가 다음 텍스트를 삽입합니다 @SuppressWarnings("unchecked")..


1
감사. 그러나이 추가됩니다 // noinspection 중단 대신 @SuppressWarnings의 ( "중단")
마틴 Vysny

1
@SuppressWarnings()자바는, //noinspection자바 스크립트입니다
티노

1
@MartinVysny 당신이 원하는 경우에 @SuppressWarnings("unchecked")사용 Suppress for method하는 대신Suppress for statement
목수

6
// noinspection에 유효한 모든 태그 목록이 있습니까?
andresp

14

경고에 따라 @SuppressWarnings. 예 :

@SuppressWarnings("deprecation")
yourLineWhichIsDeprecated;

억제 할 수있는 매우 긴 경고 목록을 보려면 이 답변살펴보십시오 . 자세한 내용은 해당 주제에 대한 다른 게시물을 확인하십시오.


배경 정보를 제공해 주셔서 감사합니다. SuppressWarning이 어떻게 작동하는지 아는 것이 좋습니다. 그러나 IntelliJ 관련 솔루션을 찾고있었습니다.
kat

링크를 클릭하면 임의의 광고 또는 웹 페이지로 이동합니다
airsquared 2017-06-05

링크를 수정했습니다.
Martijn Courteaux 2017-06-05

8

IntelliJ 15에서 인라인 "노란색 전구"및 대체 입력 메뉴는 한 줄에 대한 검사를 억제하지 않습니다.

메뉴를 통해 검사를 실행할 때 더 많은 옵션이 있습니다 : Analyze -> Inspect Code....

그런 다음 검사 패널에서 오른쪽에 다양한 옵션이 제공됩니다. 오른쪽 패널의 일부 텍스트를 클릭 할 수 있습니다. 일반적으로 문제 해결 기능 (빠른 수정)도 사용할 수 있습니다.

여기에 이미지 설명 입력

(분명히 @tino는 이미 댓글에서 이것을 발견했지만 처음에는 그의 댓글을 놓쳤습니다. 개인적으로 놓친 중요한 부분을 더 쉽게 찾을 수 있도록 전체 답변으로 추가했습니다.)


최소한 "검사 비활성화"또는 "...에 대해 억제"를 제공하지 않는 대체 입력 메뉴에 의존하지 않는 답변.
Michaël Polla

1
  1. 아래에 물결 선 〰️이있는 불만 영역을 클릭하십시오.
  2. 전구 💡가 나타나면 전구 💡를 클릭하세요.
  3. 억제 명령문 옵션을 선택하십시오.

여기에 이미지 설명 입력

4. 현재 행 위에 검사 없음 주석이 추가됩니다. //noinspection CssInvalidPropertyValue

  1. 불평이 사라집니다 👏

0

Kotlin 언어와 IntelliJ를 사용하여 코드를 컴파일 할 때 여기에 힌트가 있습니다.

다음은 컴파일러 경고의 출처와 Kotlin 컴파일러가 출력하는 기본 오류 메시지가 정의 된 github 소스에 대한 링크입니다.

kotlin / compiler / frontend / src / org / jetbrains / kotlin / diagnostics / rendering / DefaultErrorMessages.java

컴파일러가 "Variable ''{0} ''is never used"를 출력하는 경우 이는 DefaultErrorMessages.java의 다음 행에서 발생합니다.

MAP.put(UNUSED_VARIABLE, "Variable ''{0}'' is never used", NAME);

경고를 표시하지 않으려면 다음과 같이 코드에서 사용되지 않는 변수 앞에 @Suppress () 주석을 넣을 수 있습니다.

@Suppress("UNUSED_VARIABLE")
var y: Int = 3

따라서 IntelliJ가 강조 표시된 표현식에서 Alt + Enter를 눌러 제안을 팝업하는 데 도움이되지 않는 경우 @Suppress (.. names를 사용하여 오류 메시지와 특정 경고를 억제하는 키워드를 찾을 수있는 경우 DefaultErrorMessages.java 내부를 살펴 보는 것입니다 . )

이 주제는 "Kotlin"으로 표시되지 않았지만 적어도 IntelliJ로 표시되어 있습니다.


0

// 검사 안함, ConstantConditions

@SuppressWarnings는 모든 곳에서 작동하지 않습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.