小编Joh*_*ier的帖子

我应该在域类中实现equals和hashCode吗?

如果所有的Grails领域类实现equals()hashCode()?Grails是否提供默认值?

似乎不应该这样,因为总有一个id.

grails

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

如何在gradle任务中使用参数?

gradle有许多使用参数的任务.

gradle test --tests *Test
gradle dependencyInsight --dependency junit
Run Code Online (Sandbox Code Playgroud)

如何在自己的自定义任务中访问参数?

gradle

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

导入不稳定并继承配置

我有一个 package-upgrades.nix,我用它来从不稳定或分支升级包。

{...}:
{
  nixpkgs.config = {
    packageOverrides = let
      pkgsUnstable = import (
        fetchTarball https://github.com/NixOS/nixpkgs-channels/archive/nixos-unstable.tar.gz
      ) { };
      pkgsMaster = import (
        fetchTarball https://github.com/NixOS/nixpkgs/archive/master.tar.gz
      ) { };
      pkgsLocal = import (
        fetchTarball https://github.com/moaxcp/nixpkgs/archive/local.tar.gz
      ) { };
    in pkgs:
    rec {
        dropbox = pkgsUnstable.dropbox;
        jbake = pkgsUnstable.jbake;
    };
  };
}
Run Code Online (Sandbox Code Playgroud)

这适用于 Windows 管理器之类的东西。

notion = pkgsUnstable.notion;
...
windowManager.notion.enable = true;
Run Code Online (Sandbox Code Playgroud)

问题是 allowUnfree 似乎没有在不稳定的导入上设置。我想尝试这样的事情。

  pkgsUnstable = import (
    fetchTarball https://github.com/NixOS/nixpkgs-channels/archive/nixos-unstable.tar.gz
  ) { inherit config };
Run Code Online (Sandbox Code Playgroud)

这会导致未定义配置的错误。

error: undefined variable ‘config’ at …
Run Code Online (Sandbox Code Playgroud)

nixos nix

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

如何在家庭管理器中使用覆盖从不稳定的状态安装jbake

添加不稳定通道后

nix-channel --add https://nixos.org/channels/nixpkgs-unstable unstable
Run Code Online (Sandbox Code Playgroud)

我在〜/ .config / nixpkgs / overlays / package-upgrades / default.nix下添加了覆盖

self: super:
let
  unstable = import <unstable> {};
in {
  jbake = unstable.jbake;
}
Run Code Online (Sandbox Code Playgroud)

此叠加层已添加到 home.nix

nixpkgs.overlays = [ (import ./overlays/package-upgrades) ];
Run Code Online (Sandbox Code Playgroud)

我跑步时home-manager switch出现错误

0 + john@n1 nixpkgs $ home-manager switch
Too many heap sections: Increase MAXHINCR or MAX_HEAP_SECTS
Run Code Online (Sandbox Code Playgroud)

整个配置可以在这里找到。

如何使用家庭管理器和叠加图从不稳定的属性升级单个属性?

nixos nix

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

是否有分解的 war 目录的 Maven 属性?

是否可以获取我的项目的目录 ${project.build.directory}/test-1.0-SNAPSHOT ?

我必须从该目录中排除某些文件以进行强化扫描,并且我刚刚意识到当版本更改时该目录也会更改。是否有一个属性可以用来替换该目录的名称?

java war maven

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

无法并行工作的自定义收集器

我制作了一个自定义收集器,它使用 MessageDigest 来创建哈希。一般来说,MessageDigest 不能并行工作。我看到的问题在于combiner()方法。无法组合两个 MessageDigest 对象。当我返回 null 时,它似乎可以工作,但如果我抛出一个,UnsupportedOperationException它就会失败。实现不支持并行操作的收集器的典型方法是什么?

class ChecksumCollector implements Collector<String, MessageDigest, ByteBuffer> {
    private String algorithm;

    ChecksumCollector(final String algorithm) {
        this.algorithm = algorithm;
    }

    @Override
    public Supplier<MessageDigest> supplier() {
        return () -> {
            try {
                return MessageDigest.getInstance(algorithm);
            } catch (NoSuchAlgorithmException e) {
                throw new UnsupportedOperationException("Could not find MessageDigest for algorithm " + algorithm, e);
            }
        };
    }

    @Override
    public BiConsumer<MessageDigest, String> accumulator() {
        return (md, s) -> md.update(s.getBytes(StandardCharsets.UTF_8));
    }

    @Override
    public BinaryOperator<MessageDigest> combiner() { …
Run Code Online (Sandbox Code Playgroud)

java java-stream collectors

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

Grails 从工厂创建服务

我想使用依赖注入在我的 Grails 应用程序中使用用 Java 编写的服务。在没有注入的情况下用 Java 创建它看起来像这样:

ServiceFactory.newInstance().getElementService()
Run Code Online (Sandbox Code Playgroud)

我想以与为控制器、服务和作业注入服务的方式相同的方式使用它。

class ImportJob {
    def elementService
    ...
}
Run Code Online (Sandbox Code Playgroud)

我知道这应该进入resources.groovy,这就是我到目前为止所拥有的:

serviceFactory(ServiceFactory) { bean ->
    bean.factoryMethod = 'newInstance'
}

elementService(ElementService) {

}
Run Code Online (Sandbox Code Playgroud)

我在文档中发现很少有资源可以帮助解决这个问题。我如何完成 elementService 以便它如上所述创建对象?我应该使用 BeanBuilder 吗?

grails spring-bean

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

如何在 micronaut 中设置应用程序的根日志级别

我正在开发一个 cli 应用程序,它可以接受一些选项:--info, --debug, --trace。我想使用参数来设置整个应用程序的日志记录级别。是否有捷径可寻?这是我到目前为止所尝试过的:

    LogLevel level;
    if(info) {
      level = LogLevel.INFO;
    } else if (debug) {
      level = LogLevel.DEBUG;
    } else if (trace) {
      level = LogLevel.TRACE;
    } else {
      level = LogLevel.WARN;
    }
    loggingSystem.setLogLevel(Logger.ROOT_LOGGER_NAME, level);
Run Code Online (Sandbox Code Playgroud)

loggingSystem被注入到类中。

  @Inject
  private LoggingSystem loggingSystem;
Run Code Online (Sandbox Code Playgroud)

micronaut

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

标签 统计

grails ×2

java ×2

nix ×2

nixos ×2

collectors ×1

gradle ×1

java-stream ×1

maven ×1

micronaut ×1

spring-bean ×1

war ×1