小编svi*_*lim的帖子

使用Lint和SonarQube分析Android项目

我真的有一个"溢出"试图使这些东西一起工作.我按照这里的指示:http://docs.sonarqube.org/display/PLUG/Android+Lint+Plugin,最后得到一个安装了Android Lint插件1.1的SonarQube 5.1.1服务器.然后我配置了我的多模块Gradle构建以使用SonarQube插件:请参阅下面的root配置中的代码片段.

plugins {
    id 'org.sonarqube' version '1.0'
}

sonarqube {
    properties {

        property 'sonar.host.url', 'sonarqube-server:9000'
        property 'sonar.jdbc.url', 'jdbc:mysql://sonarqube-db:3306/sonar?useUnicode=true&characterEncoding=utf8'
        property 'sonar.jdbc.driverClassName', 'com.mysql.jdbc.Driver'
        property 'sonar.jdbc.username', 'sonar'
        property 'sonar.jdbc.password', 'sonar'
        property 'sonar.sourceEncoding', 'UTF-8'
        property 'sonar.login', 'admin'
        property 'sonar.password', 'admin'

        property 'sonar.profile', 'Android Lint'

        property 'sonar.import_unknown_files', true
        property 'sonar.android.lint.report', 'build/outputs/lint-results.xml'
    }
}
Run Code Online (Sandbox Code Playgroud)

之后我运行lint sonarqube任务来执行分析.因此,我得到了关于'retrolambda'项目(java.lang.UnsupportedOperationException: Unknown ASTNode child: LambdaExpression)的大量Lint错误,这是非常正常的,并且lint-results.xml(每个模块附带HTML版本)文件包含所发现问题的描述.该报告说,发现了8个错误和434个警告.但是当sonarqube插件试图将结果上传到SonarQube服务器时出现问题.日志中充满了"无法找到文件"和"无法找到规则"消息.当处理结束时,我的SonarQube服务器项目没有报告任何问题.

我想知道,出了什么问题?我检查了路径,所有文件都在那里.我浏览了所有可以达到的讨论,似乎我的配置是正确的,我做的一切都是正确的.有没有人有任何线索,我错过了什么,需要检查什么?欢迎任何建议或想法.

如果有一种方法可以使用外部SonarQube Runner导入lint数据,我也会很高兴,因为这个工具似乎比Gradle插件更可预测和更稳定.

java android gradle android-gradle-plugin sonarqube

50
推荐指数
2
解决办法
8605
查看次数

使用 ServiceAccount 到 IAM 角色映射在 Kubernetes 中运行 Elasticsearch 时出现 S3 连接问题

当我尝试将在 Kubernetes 中运行的 Elasticsearch 7.8.0 实例连接到 S3 存储桶作为备份存储时遇到了一个问题。安装如下。

有一个部署为自定义资源 ( ECK )的 Elasticsearch 。然后在用于执行此资源部署的 pod 的 ServiceAccount 与有权访问目标存储桶进行备份的 IAM 角色之间存在信任关系。然后我创建了一个 AWS S3 类型的快照存储库,并提供该存储桶作为目标。但是当我尝试验证存储库时,我收到了拒绝访问错误。

据我所见,根据 ECK 原始文档创建自动快照,假设访问存储桶的凭据是通过 Keystore 存储的。但我也看到我的 Elasticsearch 版本使用的 AWS SDK 应该支持从 ServiceAccount 获取凭证:https : //github.com/elastic/elasticsearch/blob/v7.8.0/plugins/repository-s3/build.gradle#L31使用受支持的 AWS 开发工具包

因此我想知道为什么这些组件没有按预期工作。有没有人尝试建立类似的配置?Elasticsearch 中是否存在任何阻止其从 ServiceAccount 获取凭据的基本问题?

由于涉及的实体数量比较多,我试图概括地描述这个案例。请让我知道这种情况是否需要有关实体配置的额外详细信息。

--- 更新

以下是 pod 规范的示例:

kind: Pod
apiVersion: v1
metadata:
  name: logging-elasticsearch-es-default-0
  generateName: logging-elasticsearch-es-default-
  namespace: elastic-logging
  selfLink: /api/v1/namespaces/elastic-logging/pods/logging-elasticsearch-es-default-0
  uid: 29ff69cc-9c01-448d-821e-d0da26cd2ba6
  resourceVersion: '1950203'
  creationTimestamp: '2020-07-15T15:38:40Z'
  labels:
    common.k8s.elastic.co/type: elasticsearch
    controller-revision-hash: logging-elasticsearch-es-default-78fd9d9d45
    elasticsearch.k8s.elastic.co/cluster-name: …
Run Code Online (Sandbox Code Playgroud)

elasticsearch kubernetes amazon-eks

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

由CountedCompleter的文档和来源混淆

这是java.util.concurrent.CountedCompleter类的代码片段(JDK 1.8.0_25).

/**
 * If the pending count is nonzero, decrements the count;
 * otherwise invokes {@link #onCompletion(CountedCompleter)}
 * and then similarly tries to complete this task's completer,
 * if one exists, else marks this task as complete.
 */
public final void tryComplete() {
    CountedCompleter<?> a = this, s = a;
    for (int c;;) {
        if ((c = a.pending) == 0) {
            a.onCompletion(s);
            if ((a = (s = a).completer) == null) {
                s.quietlyComplete();
                return;
            }
        }
        else if …
Run Code Online (Sandbox Code Playgroud)

java concurrency java.util.concurrent forkjoinpool

2
推荐指数
1
解决办法
966
查看次数