Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
可爱+小可爱
p3c
提交
f6ea93d1
P
p3c
项目概览
可爱+小可爱
/
p3c
与 Fork 源项目一致
从无法访问的项目Fork
通知
4
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
p3c
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
f6ea93d1
编写于
4月 19, 2020
作者:
C
caikang.ck
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix compatibility issue with new idea version
上级
3a01b6d9
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
25 addition
and
32 deletion
+25
-32
idea-plugin/p3c-common/src/main/kotlin/com/alibaba/p3c/idea/component/AliProjectComponent.kt
...lin/com/alibaba/p3c/idea/component/AliProjectComponent.kt
+10
-0
idea-plugin/p3c-common/src/main/kotlin/com/alibaba/p3c/idea/component/CommonSettingsApplicationComponent.kt
.../p3c/idea/component/CommonSettingsApplicationComponent.kt
+2
-5
idea-plugin/p3c-common/src/main/kotlin/com/alibaba/p3c/idea/inspection/AliAccessToNonThreadSafeStaticFieldFromInstanceInspection.kt
...AccessToNonThreadSafeStaticFieldFromInstanceInspection.kt
+2
-2
idea-plugin/p3c-common/src/main/kotlin/com/alibaba/p3c/idea/inspection/AliWrapperTypeEqualityInspection.kt
...a/p3c/idea/inspection/AliWrapperTypeEqualityInspection.kt
+11
-7
p3c-pmd/pom.xml
p3c-pmd/pom.xml
+0
-18
未找到文件。
idea-plugin/p3c-common/src/main/kotlin/com/alibaba/p3c/idea/component/AliProjectComponent.kt
浏览文件 @
f6ea93d1
...
...
@@ -16,10 +16,14 @@
package
com.alibaba.p3c.idea.component
import
com.alibaba.p3c.idea.compatible.inspection.Inspections
import
com.alibaba.p3c.idea.component.CommonSettingsApplicationComponent.Companion
import
com.alibaba.p3c.idea.config.P3cConfig
import
com.alibaba.p3c.idea.i18n.P3cBundle
import
com.alibaba.p3c.idea.inspection.AliPmdInspectionInvoker
import
com.alibaba.p3c.idea.pmd.SourceCodeProcessor
import
com.alibaba.p3c.pmd.I18nResources
import
com.alibaba.smartfox.idea.common.component.AliBaseProjectComponent
import
com.intellij.openapi.actionSystem.ActionManager
import
com.intellij.openapi.project.Project
import
com.intellij.openapi.vfs.VirtualFileAdapter
import
com.intellij.openapi.vfs.VirtualFileEvent
...
...
@@ -58,6 +62,12 @@ class AliProjectComponent(
}
}
override
fun
initComponent
()
{
I18nResources
.
changeLanguage
(
p3cConfig
.
locale
)
val
analyticsGroup
=
ActionManager
.
getInstance
().
getAction
(
CommonSettingsApplicationComponent
.
analyticsGroupId
)
analyticsGroup
.
templatePresentation
.
text
=
P3cBundle
.
getMessage
(
CommonSettingsApplicationComponent
.
analyticsGroupText
)
}
override
fun
projectOpened
()
{
Inspections
.
addCustomTag
(
project
,
"date"
)
VirtualFileManager
.
getInstance
().
addVirtualFileListener
(
listener
)
...
...
idea-plugin/p3c-common/src/main/kotlin/com/alibaba/p3c/idea/component/CommonSettingsApplicationComponent.kt
浏览文件 @
f6ea93d1
...
...
@@ -23,6 +23,7 @@ import com.alibaba.p3c.pmd.I18nResources
import
com.alibaba.smartfox.idea.common.component.AliBaseApplicationComponent
import
com.intellij.codeInsight.daemon.impl.SeverityRegistrar
import
com.intellij.openapi.actionSystem.ActionManager
import
com.intellij.openapi.components.ServiceManager
/**
*
...
...
@@ -30,15 +31,11 @@ import com.intellij.openapi.actionSystem.ActionManager
* @author caikang
* @date 2017/06/19
*/
class
CommonSettingsApplicationComponent
(
private
val
p3cConfig
:
P3cConfig
)
:
AliBaseApplicationComponent
{
class
CommonSettingsApplicationComponent
:
AliBaseApplicationComponent
{
override
fun
initComponent
()
{
SeverityRegistrar
.
registerStandard
(
HighlightInfoTypes
.
BLOCKER
,
HighlightSeverities
.
BLOCKER
)
SeverityRegistrar
.
registerStandard
(
HighlightInfoTypes
.
CRITICAL
,
HighlightSeverities
.
CRITICAL
)
SeverityRegistrar
.
registerStandard
(
HighlightInfoTypes
.
MAJOR
,
HighlightSeverities
.
MAJOR
)
I18nResources
.
changeLanguage
(
p3cConfig
.
locale
)
val
analyticsGroup
=
ActionManager
.
getInstance
().
getAction
(
analyticsGroupId
)
analyticsGroup
.
templatePresentation
.
text
=
P3cBundle
.
getMessage
(
analyticsGroupText
)
}
companion
object
{
...
...
idea-plugin/p3c-common/src/main/kotlin/com/alibaba/p3c/idea/inspection/AliAccessToNonThreadSafeStaticFieldFromInstanceInspection.kt
浏览文件 @
f6ea93d1
...
...
@@ -17,14 +17,14 @@ package com.alibaba.p3c.idea.inspection
import
com.alibaba.p3c.idea.i18n.P3cBundle
import
com.intellij.codeHighlighting.HighlightDisplayLevel
import
com.siyeh.ig.threading.AccessToNonThreadSafeStaticFieldFromInstanceInspection
Base
import
com.siyeh.ig.threading.AccessToNonThreadSafeStaticFieldFromInstanceInspection
/**
* @author caikang
* @date 2016/12/08
*/
class
AliAccessToNonThreadSafeStaticFieldFromInstanceInspection
:
AccessToNonThreadSafeStaticFieldFromInstanceInspection
Base
,
:
AccessToNonThreadSafeStaticFieldFromInstanceInspection
,
AliBaseInspection
{
constructor
()
/**
...
...
idea-plugin/p3c-common/src/main/kotlin/com/alibaba/p3c/idea/inspection/AliWrapperTypeEqualityInspection.kt
浏览文件 @
f6ea93d1
...
...
@@ -45,6 +45,7 @@ import org.jetbrains.annotations.NonNls
*/
class
AliWrapperTypeEqualityInspection
:
BaseInspection
,
AliBaseInspection
{
constructor
()
/**
* For Javassist
*/
...
...
@@ -86,7 +87,7 @@ class AliWrapperTypeEqualityInspection : BaseInspection, AliBaseInspection {
}
val
type
=
infos
[
0
]
as
PsiArrayType
val
componentType
=
type
.
componentType
val
fix
=
ArrayEqualityFix
(
componentType
is
PsiArrayType
)
val
fix
=
ArrayEqualityFix
(
componentType
is
PsiArrayType
,
familyName
)
return
DecorateInspectionGadgetsFix
(
fix
,
fix
.
name
,
familyName
)
}
...
...
@@ -112,10 +113,9 @@ class AliWrapperTypeEqualityInspection : BaseInspection, AliBaseInspection {
return
true
}
return
TypeUtils
.
expressionHasTypeOrSubtype
(
expression
,
CommonClassNames
.
JAVA_LANG_BOOLEAN
)
||
TypeUtils
.
expressionHasTypeOrSubtype
(
expression
,
CommonClassNames
.
JAVA_LANG_CHARACTER
)
||
TypeUtils
.
expressionHasTypeOrSubtype
(
expression
,
CommonClassNames
.
JAVA_LANG_CHARACTER
)
}
private
fun
hasNumberType
(
expression
:
PsiExpression
):
Boolean
{
return
TypeUtils
.
expressionHasTypeOrSubtype
(
expression
,
CommonClassNames
.
JAVA_LANG_NUMBER
)
}
...
...
@@ -125,7 +125,8 @@ class AliWrapperTypeEqualityInspection : BaseInspection, AliBaseInspection {
}
private
class
ArrayEqualityFix
(
private
val
deepEquals
:
Boolean
)
:
InspectionGadgetsFix
()
{
private
class
ArrayEqualityFix
(
private
val
deepEquals
:
Boolean
,
private
val
familyName
:
String
)
:
InspectionGadgetsFix
()
{
override
fun
getName
():
String
{
if
(
deepEquals
)
{
...
...
@@ -144,7 +145,8 @@ class AliWrapperTypeEqualityInspection : BaseInspection, AliBaseInspection {
val
element
=
descriptor
.
psiElement
val
parent
=
element
.
parent
as
?
PsiBinaryExpression
?:
return
val
tokenType
=
parent
.
operationTokenType
@NonNls
val
newExpressionText
=
StringBuilder
()
@NonNls
val
newExpressionText
=
StringBuilder
()
if
(
JavaTokenType
.
NE
==
tokenType
)
{
newExpressionText
.
append
(
'!'
)
}
else
if
(
JavaTokenType
.
EQEQ
!=
tokenType
)
{
...
...
@@ -160,8 +162,10 @@ class AliWrapperTypeEqualityInspection : BaseInspection, AliBaseInspection {
val
rhs
=
parent
.
rOperand
?:
return
newExpressionText
.
append
(
rhs
.
text
)
newExpressionText
.
append
(
')'
)
PsiReplacementUtil
.
replaceExpressionAndShorten
(
parent
,
newExpressionText
.
toString
())
PsiReplacementUtil
.
replaceExpressionAndShorten
(
parent
,
newExpressionText
.
toString
()
)
}
}
...
...
p3c-pmd/pom.xml
浏览文件 @
f6ea93d1
...
...
@@ -253,24 +253,6 @@
</tags>
</configuration>
</plugin>
<plugin>
<artifactId>
maven-assembly-plugin
</artifactId>
<version>
3.0.0
</version>
<configuration>
<descriptorRefs>
<descriptorRef>
jar-with-dependencies
</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>
make-assembly
</id>
<phase>
package
</phase>
<goals>
<goal>
single
</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录