我正在尝试使用gradle(在Java 11中)项目配置checkstyle插件,如下所示:
@available(iOS 5.0, *)
open class MPNowPlayingInfoCenter : NSObject {
open class func `default`() -> MPNowPlayingInfoCenter
open var nowPlayingInfo: [String : Any]?
@available(iOS 13.0, *)
open var playbackState: MPNowPlayingPlaybackState
}
我的checkstyle.xml如下:
checkstyle {
toolVersion = '8.2'
configFile = rootProject.file('config/checkstyle/checkstyle.xml')
configProperties = [
'checkstyle.cache.file': "${buildDir}/checkstyle.cache",
]
ignoreFailures = true
showViolations = true
}
......
我收到以下异常
起因:com.puppycrawl.tools.checkstyle.api.CheckstyleException:无法 解析配置流-文档无效:无语法 找到。:3:13 在com.puppycrawl.tools.checkstyle.ConfigurationLoader.loadConfiguration(ConfigurationLoader.java:441) 在com.puppycrawl.tools.checkstyle.ConfigurationLoader.loadConfiguration(ConfigurationLoader.java:386) 在com.puppycrawl.tools.checkstyle.ant.CheckstyleAntTask.createRootModule(CheckstyleAntTask.java:407) ...更多106 由以下原因引起:org.xml.sax.SAXParseException; systemId:文件:/home/workspace/service/config/checkstyle/checkstyle.xml; lineNumber:3; columnNumber:13;文档无效:没有语法 找到。
是否有解决此问题的指针?
答案 0 :(得分:0)
您需要定义要检查的内容;例如:
<!DOCTYPE module PUBLIC
"-//Checkstyle//DTD Checkstyle Configuration 1.3//EN"
"https://checkstyle.org/dtds/configuration_1_3.dtd">
应为these .dtd files之一。
答案 1 :(得分:0)
我的checkstyle.xml如下所示:
<code_scheme name="CustomStyle" version="1">
这不是checkstyle的正确标记。 Checkstyle配置如下:
<?xml version="1.0"?>
<!DOCTYPE module PUBLIC
"-//Puppy Crawl//DTD Check Configuration 1.3//EN"
"https://checkstyle.org/dtds/configuration_1_3.dtd">
<module name="Checker">
<property name="charset" value="UTF-8"/>
<module name="TreeWalker">
</module>
</module>
您可以阅读https://checkstyle.sourceforge.io/config.html以获得更多信息。
看起来您提供的是IntelliJ配置文件。无论哪种方式,它都与checkstyle不兼容。