小编G. *_*eam的帖子

为什么不锁定基于值的类

文档说你不应该锁定基于值的Java类的实例,例如Optional因为代码

如果它试图将两个引用区分为基于值的类的相等值,则可能产生不可预测的结果......间接地通过对同步的诉求......

为什么Java的基于价值的类不能被序列化?断言

因为未来的JVM实现可能不会使用对象标头和基于值的类的引用指针,所以一些限制很明显.(例如,没有锁定JVM必须不支持的标识.锁定的引用可以被删除并在以后被另一个替换,这使得释放锁定毫无意义并将导致死锁).

IE认为该禁令是面向未来的.但是这个断言没有参考.

如果以未来基础,我想参考它.如果没有,我想了解基于价值的对象是什么基础Object.

编辑

顺便说一句,我理解不要锁定Integers和其他原始包装类的原因; 他们可能会被缓存.但是我找不到任何文档说基于价值的类,以及整数,等等.基于价值观,它们不是基于价值的.IE 可选JavaDocs等.明确地说

这是一个基于价值的课程

对于Integer,等等,情况并非如此.

java locking java-8

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

仅针对当前更改的 SONAR 静态代码分析

使用声纳如何仅针对我所做的当前更改进行静态代码分析。例如,我的项目 100 类/文件,我对类/文件进行了更改,现在声纳必须仅针对该特定项目而不是整个项目运行静态代码分析。如何实现?

static analysis sonarqube sonarqube-scan

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

如何在Ionic 2项目上运行声纳扫描仪

我们已经将我们的前端项目迁移ionic/es6/angular到了ionic2/typescript/angular2.一切都很好,除了我们不知道如何运行声纳报告项目.

以前我们使用gulp和run gulp sonar命令生成声纳报告(在本地声纳服务器上).

我们不会在新的ionic2项目中使用gulp,并想知道如何在新项目中运行声纳扫描仪.

注意

  1. 我们在声纳服务器上安装了typescript插件.
  2. 我们sonar-project.properties在项目rood目录中添加了文件

问题是如何运行它

谢谢...

typescript sonarqube ionic2 sonarqube-scan angular

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

一段时间后,SonarQube WebServer进程激活了CPU

我们在AWS节点上运行SonarQube 5.1.2.经过一段时间的使用,通常是一两天后,Sonar Web服务器变得没有响应,并且服务器的CPU会出现问题:

top - 01:59:47 up 2 days,  3:43,  1 user,  load average: 1.89, 1.76, 1.11
Tasks:  93 total,   1 running,  92 sleeping,   0 stopped,   0 zombie
Cpu(s): 94.5%us,  0.0%sy,  0.0%ni,  5.5%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   7514056k total,  2828772k used,  4685284k free,   155372k buffers
Swap:        0k total,        0k used,        0k free,   872440k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                                                                                           
 2328 root      20   0 3260m 1.1g  19m S 188.3 15.5  62:51.79 java                                                                                                                                                                                                              
   11 …
Run Code Online (Sandbox Code Playgroud)

sonarqube sonarqube-ops

6
推荐指数
0
解决办法
605
查看次数

tmatesoft.svn.core.SVNAuthenticationException:svn:E170001

我们正在使用遗留项目(maven)来设置devop.初学者与詹金斯.Jenkins构建现在没有问题.但是,在将sonarqube与jenkins集成时,我们收到以下错误:

ERROR: Error during SonarQube Scanner execution
java.lang.IllegalStateException: Error when executing blame for file src/main/java/com/acme/acq/scavenger/AssetCmboItem.java
    at org.sonar.plugins.scm.svn.SvnBlameCommand.blame(SvnBlameCommand.java:100)
    at org.sonar.plugins.scm.svn.SvnBlameCommand.blame(SvnBlameCommand.java:59)
    at org.sonar.batch.scm.ScmSensor.execute(ScmSensor.java:84)
    at org.sonar.batch.sensor.SensorWrapper.analyse(SensorWrapper.java:57)
    at org.sonar.batch.phases.SensorsExecutor.executeSensor(SensorsExecutor.java:58)
    at org.sonar.batch.phases.SensorsExecutor.execute(SensorsExecutor.java:50)
    at org.sonar.batch.phases.PhaseExecutor.execute(PhaseExecutor.java:102)
    at org.sonar.batch.scan.ModuleScanContainer.doAfterStart(ModuleScanContainer.java:185)
    at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:135)
    at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:120)
    at org.sonar.batch.scan.ProjectScanContainer.scan(ProjectScanContainer.java:264)
    at org.sonar.batch.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:259)
    at org.sonar.batch.scan.ProjectScanContainer.doAfterStart(ProjectScanContainer.java:249)
    at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:135)
    at org.sonar.batch.scan.ProjectScanContainer.startComponents(ProjectScanContainer.java:127)
    at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:120)
    at org.sonar.batch.task.ScanTask.execute(ScanTask.java:55)
    at org.sonar.batch.task.TaskContainer.doAfterStart(TaskContainer.java:86)
    at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:135)
    at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:120)
    at org.sonar.batch.bootstrap.GlobalContainer.executeTask(GlobalContainer.java:122)
    at org.sonar.batch.bootstrapper.Batch.executeTask(Batch.java:119)
    at org.sonar.runner.batch.BatchIsolatedLauncher.execute(BatchIsolatedLauncher.java:67)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.sonar.runner.impl.IsolatedLauncherProxy.invoke(IsolatedLauncherProxy.java:61)
    at com.sun.proxy.$Proxy0.execute(Unknown Source)
    at org.sonar.runner.api.EmbeddedRunner.doExecute(EmbeddedRunner.java:274)
    at org.sonar.runner.api.EmbeddedRunner.runAnalysis(EmbeddedRunner.java:165)
    at …
Run Code Online (Sandbox Code Playgroud)

svn maven jenkins sonarqube sonarqube-scan

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

SonarQube分析模式:预览与问题

SonarQube(大于5.2)分析的这些预览问题模式之间的主要区别是什么?

考虑到http://docs.sonarqube.org/display/SONAR/Concepts 发布预览之间的主要区别在于,预览仅报告问题(无测量),并且没有报告被推回SonarQube服务器; 这个想法很清楚.但问题呢?编写的问题预览相同,但仅应用于工具开发.我有点困惑,工具是什么意思?

sonarqube sonarqube-scan

6
推荐指数
2
解决办法
2万
查看次数

排除 Sonarqube 中的方法

使用 sonarqube 进行分析时,有没有办法排除类中的特定方法?我找到的只是如何排除文件和模块。

sonarqube sonarqube-web

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

扫描C#文件时,行1203超出范围

我们有一个非常大的代码库,其中一个项目打破了SonarQube分析,出现以下错误.

016-12-15T11:20:30.8989361Z ##[error]ERROR: Error during SonarQube Scanner execution 
2016-12-15T11:20:30.8999277Z ##[error]java.lang.IllegalStateException: Line 1203 is out of range in the file Converters/IMSServiceToESBConverter.cs (lines: 1202)
Run Code Online (Sandbox Code Playgroud)

我们正在使用SonarQube 6.1和最新的C#插件(5.5.1.522).

禁用C#配置文件中的所有规则仍会导致此问题.

c# sonarqube

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

查看 sonarqube 重复代码

在sonarqube 5.6.4中,如何查看重复的代码块?在 4.5 中,重复指标下有一个几乎隐藏的 UI 元素。现在它什么也没做。

由于问题附加在文件顶部,我如何知道需要修复什么?

sonarqube sonarqube-web

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

SonarQube不对分析根项目进行分析

我需要只分析根项目,并忽略嵌套的子模块,但它d

所以我有这个层次结构:

ProjectMain
 -src
 -subProjectAngular
  settings.gradle
Run Code Online (Sandbox Code Playgroud)

我的配置settings.gradle

  rootProject.name="ProjectMain" 
  include 'subProjectAngular'
Run Code Online (Sandbox Code Playgroud)

我只需要分析根项目,并忽略嵌套的子模块,但我得到:

A multi-module project can't have source folders, so 'C:\Users\vagrant\develop-2\site\Source\Site\Vessels\src\main\java' won't be used for the analysis. If you want to analyse files of this folder, y
ou should create another sub-module and move them inside it.
Run Code Online (Sandbox Code Playgroud)

然后我尝试添加多模块配置:

systemProp.sonar.projectKey=site
systemProp.sonar.projectName=vessels-test
systemProp.sonar.projectBaseDir=.
systemProp.sonar.sources=src

systemProp.sonar.modules=javamodule, angularmodule

systemProp.javamodule.sonar.projectName=vessels
systemProp.javamodule.sonar.sources=src
systemProp.javamodule.sonar.projectBaseDir=.
systemProp.javamodule.sonar.language=java

systemProp.angularmodule.sonar.projectName=angular
systemProp.angularmodule.sonar.projectBaseDir=.
systemProp.angularmodule
Run Code Online (Sandbox Code Playgroud)

但在UI处收到消息:未执行任何分析

它仅在我从settings.gradle中删除子项目的定义时才有效,并删除所有子模块配置

java gradle sonarqube sonarqube-scan

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