小编Min*_*iMe的帖子

如何关闭java流序列中的类型提示

当我在 Java 中有使用流的代码时,intellij 会显示有关流结果的类型提示。

我想禁用这些提示

使用以下代码的示例:

Stream.of (1, 2. 3)
    .map (n -> n + 1)
    .map (n -> n % 2 == 0 ? "even number " + n : "odd number " + n)
    .peek (System.out:println)
    .map (s -> Float.parseFloat (s.substring (s.lastIndexOf (" "))))
    ;
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

我已经关闭了其他参数的工具提示,但流后的提示仍然存在。它们在视觉上非常分散我的注意力,同时为我提供很少的额外信息。

如果我知道如何更改提示的颜色或样式,我也会很高兴(我安装了 Material Theme UI)

java intellij-idea

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

在什么情况下,您会将 openssl ca 的 `unique_subject` 设置为 yes?

默认情况下unique_subject设置为yes,这会阻止您使用相同的专有名称签署多个证书。尝试签署此类证书将导致出现以下错误消息。

failed to update database
TXT_DB error number 2
Run Code Online (Sandbox Code Playgroud)

然而,允许重复 DN 有一个明确的用例,即为依赖方颁发具有延长到期日期的证书。例如,一个网站的证书需要在几个月后刷新([1]中已经提出了类似的论点)。在不更改设置的情况下,如果吊销现有证书,则只能颁发具有相同 dn 的新证书。但您可能想给网站所有者一段宽限期,在此期间两个证书都有效。我遇到的唯一其他选择是更改 dn 中与证书不太相关的内容(例如 OU)[2]。

openssl 文档 [3] 有一个条目,unique_subject其中建议选择默认值以便与旧版本兼容。该页面还提到应设置此值no以使 ca 翻转更容易。这对我来说值no是完全可以的,也许应该是默认值。

可以找到对此属性的许多参考,并且通常建议将此值设置为no(在 openssl.cnf 和 index.txt.attr 文件中)[1、2、3、4,等等]。我只发现一个地方有人建议将其保留yes或至少不太关心其实际价值[5]。但是,在那条线索中,只给出了一个空白的声明:

For the use case of a VPN, as EasyRSA was originally intended, the current setting is
best.
Run Code Online (Sandbox Code Playgroud)

是吗?为什么?

我了解该选项的作用以及如何使用它。我找不到的是早期违约的合理性yes

openssl ca 是否尝试使用此默认值解决一些安全问题?
颁发两个具有相同 dn 的证书有哪些风险?
设置时有哪些需要遵循的做法吗unique_subject=no
是否有充分的理由将该值保留为默认设置?

简而言之,是否有支持阻止具有相同 dn 的多个有效证书的论点?

[1] https://github.com/OpenVPN/easy-rsa/issues/40#issuecomment-56191531
[2] https://serverfault.com/a/810608 …

openssl ca

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

如何使用自定义 gradle 构建文件和 gradle 设置文件

gradle 命令有一堆标志来自定义其环境 [1]。其中有--build-file--settings-file。但我似乎无法让他们按照我期望的方式工作。

我期望以下内容能够发挥作用

$ cat <<-EOF > alt-settings.gradle
    rootProject.name = 'custom-name'
EOF
$ cat <<-EOF > alt-build.gradle
    task test { /* ... */ }
EOF
$ gradle \
    --settings-file alt-settings.gradle \
    --build-file alt-build.gradle \
    tasks --all
Run Code Online (Sandbox Code Playgroud)

但这会引发异常

Build file './alt-build.gradle' is not part of the build defined by settings file './alt-settings.gradle'. If this is an unrelated build, it must have its own settings file.
Run Code Online (Sandbox Code Playgroud)

如果我--settings-file从上面的命令中省略,事情就会起作用,并且 gradle 会启动alt-build.gradle

出了什么问题,我该如何解决这个问题?

gradle理想情况下,我希望即使在 settings.gradle …

build gradle

5
推荐指数
1
解决办法
4360
查看次数

使用 BigDecimals 计算 p 的第 n 个根

我目前正在尝试按照此处所述解决此问题:

http://uva.onlinejudge.org/external/1/113.pdf

计划是实现一个递归函数来推导出解决方案。这里的一些代码来自用于确定第 n 个根的 Rosetta 代码。

// Power of Cryptography 113

import java.util.Scanner;
import java.math.BigDecimal;
import java.math.RoundingMode;

// k can be 10^9 
// n <= 200
// p <= 10^101

class crypto { 
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while(in.hasNext()) {
            // Given two integers (n,p)
            // Find k such k^n = p
            int n = in.nextInt();
            BigDecimal p = in.nextBigDecimal();
            System.out.println(nthroot(n,p));
        }
    }

    public static BigDecimal nthroot(int n, BigDecimal A) {
        return nthroot(n, …
Run Code Online (Sandbox Code Playgroud)

java bigdecimal

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

标签 统计

java ×2

bigdecimal ×1

build ×1

ca ×1

gradle ×1

intellij-idea ×1

openssl ×1