2015-05-30 92 views
0

某些背景: 我正在使用小/伪pom.xml来促进SonarQube分析Python3源代码。所有Python3源文件触发此SonarQube错误...SonarQube分析报告所有Python3源文件的错误“无法解析文件”

样的错误信息(文件的完整的源代码):

[ERROR] [23:13:30.135] Unable to parse file: /home/kca/saveme2/git/kevinarpe-rambutan3/rambutan3/RTestUtil.py 
[ERROR] [23:13:30.135] Parse error at line 3 column 33: 

    --> def test_eq_and_ne(left, right, *, is_equal: bool): 
    4:  assert is_equal == (left == right) 
    5:  assert is_equal != (left != right) 
    6: 
    7: 
    8: 
    9: EOF 

上面的错误似乎抱怨Python3函数参数招给力调用者按名称指定参数。

为了准确再现,请做这个回购的git克隆(https://github.com/kevinarpe/kevinarpe-rambutan3)并运行./sonarqube.bash(小脚本来设置env并运行mvn sonar:sonar)。

也许这是一个pylint问题或环境问题(在我这边)。我从Debian GNU/Linux中运行。

回答

1

这是由于插件解析器中的一个错误:对于函数声明的参数列表,它只识别Python 2.x语法。

我创建了下面的票来解决它在未来的版本:http://jira.sonarsource.com/browse/SONARPY-122

+0

哇...我对SonarQube JIRA一个“重大”漏洞荣幸。^..^Huzah! – kevinarpe

+0

如何报告类似的错误? python3语法也有type-hinting问题 – JackLeo

+0

@JackLeo错误应该报告给[sonarqube google group](https://groups.google.com/forum/#!forum/sonarqube)。 –