小编Aus*_*own的帖子

Gradle 多项目构建:未找到插件

对于多项目/多模块 Gradle 构建,我有一个非常基本的用例。我最终需要的结构并不比官方 Gradle 文档中提出的用于声明子项目之间的依赖关系更复杂。

在这里复制他们的文档,我们有这个项目结构:

.
??? buildSrc
?   ...
??? api
?   ??? src
?   ?   ???...
?   ??? build.gradle
??? services
?   ??? person-service
?       ??? src
?       ?   ???...
?       ??? build.gradle
??? shared
?   ??? src
?   ?   ???...
?   ??? build.gradle
??? settings.gradle
Run Code Online (Sandbox Code Playgroud)

这些构建文件:

// settings.gradle
rootProject.name = 'dependencies-java'
include 'api', 'shared', 'services:person-service'

// buildSrc/src/main/groovy/myproject.java-conventions.gradle
plugins {
    id 'java'
}

group = 'com.example'
version = '1.0'

repositories {
    mavenCentral()
}

dependencies { …
Run Code Online (Sandbox Code Playgroud)

java groovy gradle

8
推荐指数
1
解决办法
1745
查看次数

IntelliJ 2020.3 旧版 Git 本地更改视图

在 IntelliJ 2020.1 和 2020.3 之间的某个时间,Git 窗口视图发生了变化。我了解当前视图的价值,并且我在 2020.3 之前就使用过它,但是旧的默认视图去哪儿了?与 HEAD 相比,如何查看我的所有本地更改?

我已经浏览了他们的文档,但没有任何帮助。他们的一些文档甚至似乎提到了我在 IDE 中根本没有看到的按钮和选项...

https://www.jetbrains.com/help/idea/viewing-changes-information.html#comparing_local_changes

并不是说我Preview Diff在工具栏上有该按钮,但文档听起来这只是一个逐个文件的选项。需要明确的是,我希望该视图与 2020.1 中的视图相同,其中包含所有已更改文件的摘要,并且您可以单击每个文件来查看差异。

git intellij-idea

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

所有 Keycloak 协议映射器配置选项都记录在哪里?

我正在使用 Keycloak 的 Java keycloak-admin-client,我想为我的领域的客户端设置一些协议映射器。

Java API 公开此类来创建协议映射器,然后使用以下方法来设置配置选项:

    ProtocolMapperRepresentation protocolMapperRep = new ProtocolMapperRepresentation();
    protocolMapperRep.setConfig(Map.of("some.mapper.config.option", "mapper-value"));
Run Code Online (Sandbox Code Playgroud)

我查看了 javadoc 文档,不幸的是,它完全没用。:( 我没有看过rest-api文档,但我只是看了它,它没有做任何事情来枚举协议映射器表示的配置选项: https: //www.keycloak.org/docs-api /12.0/rest-api/index.html#_protocolmapperrepresentation

我在这里看到了另一个 StackOverflow 问题中的一些选项:Add protocol-mapper to keycloak using kcadm.sh

然而,必须有一个更好的地方来记录这些内容。

java keycloak keycloak-services

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

Java Argon2 哈希

我试图弄清楚如何在 Java 中实际使用 argon2 哈希来处理密码。我肯定遗漏了一些东西,因为没有一个 API 返回哈希或盐的离散字段。我尝试过argon2 的 JVM 绑定以及spring-security + bouncy castle,两者都给了我一个字符串,但它还使用除哈希密码和盐之外的信息进行序列化。

public static void main(String[] args) {
        final String rawPass = "badPassword";

        // argon2-jvm
        Argon2 argon2jvm = Argon2Factory.create(Argon2Factory.Argon2Types.ARGON2id, 16, 32);
        String arg2JvmHash = argon2jvm.hash(10, 65536, 1, rawPass.getBytes(StandardCharsets.UTF_8));
        System.out.println("argon2-jvm:");
        System.out.println(arg2JvmHash);
        System.out.println("\n\n");

        // spring security + bouncy castle
        Argon2PasswordEncoder arg2SpringSecurity = new Argon2PasswordEncoder(16, 32, 1, 65536, 10);
        String springBouncyHash = arg2SpringSecurity.encode(rawPass);
        System.out.println("spring security + bouncy castle:");
        System.out.println(springBouncyHash);
        System.out.println("\n\n");
}
Run Code Online (Sandbox Code Playgroud)

结果如下:

argon2-jvm:
$argon2id$v=19$m=65536,t=10,p=1$BeHo0SdgM6vt5risz+yuLg$dOBFlfeoPPGCk/OLCGJ9sRhyPl0zMqMAUZvkltFWxnA



spring security + bouncy …
Run Code Online (Sandbox Code Playgroud)

java security spring-security argon2-ffi

4
推荐指数
1
解决办法
9937
查看次数

世博会卡在启动屏幕上

我最近使用了我的博览会版本,我的应用程序现在将不再工作。在对包进行更改之前,我什至尝试将应用程序的代码库恢复到之前的提交。我没有收到任何错误,而是应用程序“启动”并卡在默认的博览会启动屏幕上。

更新:最小可重现示例:https ://github.com/atb-brown/expo-issue

更新:新启动的应用程序似乎可以工作:https ://github.com/atb-brown/expo-issue/tree/expo-init

$ expo --version
5.0.3
Run Code Online (Sandbox Code Playgroud)
$ expo --version
5.0.3
Run Code Online (Sandbox Code Playgroud)

我的 Android 上的 Expo Go 应用程序版本为 2.23.2。

这是我的应用程序卡住的屏幕:

世博应用程序卡在这个屏幕上

我在控制台中没有看到任何错误。这里可能出了什么问题?

react-native yarnpkg expo

3
推荐指数
1
解决办法
5060
查看次数

IntelliJ + Git Bash + Vim:无法停止写作

我使用 IntelliJ2021.3.2和 git 2.35.windows.2

几年前,当我在 IntelliJ 终端(配置为使用 Git Bash)中输入内容时,当我在 vim 中输入完提交描述时,我会点击esc,然后我就可以执行 vim 命令。

最近,点击escIntelliJ 终端现在会使 IntelliJ 终端窗口失去焦点(因为缺乏更好的术语),因此它不再让我执行 vim 命令。然后我不得不使用ctrl + c而不是esc.

现在,对于我上面列出的版本,我什至无法使用ctrl + c. esc我还是用不了 那么,如果我无法使用ctrl + cesc为了能够执行 vim 命令,我该如何停止在 vim 中写入呢:wq

intellij-idea

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

React Native TypeScript 函数返回 JSX.Element 类型

我有一个 TypeScript 函数,它返回一个 React Native View

import React from "react";
import JSX, {View} from "react-native";

class DummyClass {
    static getView() {
        return (
            <View style={{flex: 1}}/>
        );
    }
}

export default DummyClass;
Run Code Online (Sandbox Code Playgroud)

我以这种方式调用这个函数:

import JSX from "react-native";
import DummyClass from "./util/dummy";

const DummyWrapper = () => {
    return (DummyClass.getView());
};

export default DummyWrapper;

Run Code Online (Sandbox Code Playgroud)

当我跑步时eslint,我收到警告。

5:5 警告 函数 @typescript-eslint/explicit-module-boundary-types 缺少返回类型

所以,我需要归还一些东西。JSX.Element看起来很合理,但这似乎不起作用。其一,当我尝试返回 a 时JSX.Element,VSCode 无法解析它并假装它是any。而且,它会导致调用该函数的其他地方出现错误。

所以,这样做: static getView() : JSX.Element {const …

jsx typescript reactjs eslint react-native

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