小编car*_*ing的帖子

Maven 依赖版本不匹配问题 - 从 repo 解决过时的依赖版本

当我尝试在 Eclipse 中构建我的 Maven 项目时,我收到此构建失败消息:

[INFO] Checking for transitive/resolved version mismatches.
[INFO] com.company.etc:artifact-name:
[INFO]     required: 1.5
[INFO]     resolved: 1.3
Run Code Online (Sandbox Code Playgroud)

我的 POM 文件要求此工件的 1.5 版,因此该部分是正确的。但是在列出的存储库中,版本 1.3、1.4 和 1.5 都可用,根目录中也有正确的 maven-metadata.xml 文件。简单地将我的 POM 文件要求更改为旧版本不是一种选择,因为我需要最新版本的工件中的功能。

我真的被这里难住了。有什么我忽略的可能会导致 Maven解析的版本号低于存储库服务器上实际可用的版本号

java eclipse maven maven-metadata

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

Jersey 使用什么样的日志记录以及如何使用 Logback 拦截它?

我想用 Logback 拦截 Jersey 的日志记录,但我不确定如何。有人可以指点一下吗?

java logging jersey logback

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

正则表达式与大写匹配与排除

我正在尝试为以下情况提出一个正则表达式:我需要找到grep用于以下路径的任何匹配路径:

  • 包括所有大写匹配路径.例:

    COM /富/酒吧/ 1.2.3-SNAPSHOT /酒吧-1.2.3-SNAPSHOT.jar

    注意资金BBar.

  • 排除仅包含SNAPSHOT且不包含其他大写字母的所有大写匹配路径.例:

    COM /富/酒吧/ 1.2.3-SNAPSHOT /条,1.2.3-SNAPSHOT.jar

这有可能grep吗?

regex bash grep

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

从 docker compose 内部运行 sudo 命令

我正在使用AWS EC2 实例并在 AWS linux 上安装了dockerdocker-compose

现在我有一个正在尝试命令的 docker-compose.yml文件mkdir -p /workspace/.m2/repositories。现在这个命令需要sudo,否则它会给出权限错误。

我尝试在docker-compose 中添加sudo但它给了我一个错误说

须藤:找不到命令

我可以手动运行这个命令,也可以在docker-compose.yml文件中评论这个命令,但我很想知道有没有办法从docker-compose.yml文件内部运行这个命令?

sudo amazon-ec2 docker docker-compose strongbox

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

如何使用XStream解组Map

我似乎无法使用XStream正确地解组Map.

我有以下代码:

存储类

public class Storage
{

    @XStreamAsAttribute
    private String basedir;

    @XStreamAsAttribute
    private Map<String, Repository> repositories = new LinkedHashMap<String, Repository>();

...

}
Run Code Online (Sandbox Code Playgroud)

存储库类

public class Repository
{

    @XStreamAsAttribute
    private String name;

    @XStreamAsAttribute
    private String basedir;

    @XStreamAsAttribute
    private int policy;

    @XStreamAsAttribute
    private int layout;

    @XStreamAsAttribute
    private int type;

...

}
Run Code Online (Sandbox Code Playgroud)

ConfigurationParser类

public class ConfigurationParser
{

    public Storage parseConfiguration(String xmlFile)
            throws FileNotFoundException
    {
        FileInputStream fis = new FileInputStream(xmlFile);

        XStream xstream = new XStream();
        xstream.autodetectAnnotations(true);

        xstream.alias("storage", Storage.class);
        xstream.alias("repositories", Map.class);
        xstream.alias("repository", Repository.class);

        return (Storage) …
Run Code Online (Sandbox Code Playgroud)

java xstream maven

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

如何保证bean只被Spring实例化一次

我想知道如何告诉Spring加载一个我在上下文中定义的bean一次?这可能吗?这是怎么称呼的,我需要做什么?

我基本上希望确保该类永远不会重新实例化,并且重用相同的实例.

java spring

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

Jenkins管道构建可以使用现有的构建作业吗?

是否可以在Jenkins构建管道中使用现有的构建作业?

有人能给我一个例子,看看它会是什么样的吗?

jenkins jenkins-pipeline

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

如何在 AWS 中使用 Terraform 为应用程序负载均衡器创建自定义域

我一直在尝试弄清楚如何使用 Terraform 创建具有自定义名称的应用程序负载均衡器。到目前为止我有这个:

\n
resource "aws_alb" "application_load_balancer" {\n  name               = "${var.brand}-be-${var.environment_name}-load-balancer"\n  tags               = local.tags\n  load_balancer_type = "application"\n  subnets            = data.aws_subnets.public_subnets.ids\n\n  # security group\n  security_groups    = [aws_security_group.sg_load_balancer.id]\n}\n\n# Hosted Zone for new-dev.foocorp.com\nresource "aws_route53_zone" "zone_dev" {\n  name    = "new-dev.foocorp.com"\n  comment = "Hosted Zone for new-dev.foocorp.com"\n  records = [ aws_alb.application_load_balancer.dns_name ]\n\n  tags = merge(local.tags, {\n    Name = "new-dev.foocorp.com"\n  })\n}\n
Run Code Online (Sandbox Code Playgroud)\n

但是,我得到:

\n
\xe2\x95\xb7\n\xe2\x94\x82 Error: Unsupported argument\n\xe2\x94\x82 \n\xe2\x94\x82   on main.tf line 323, in resource "aws_route53_zone" "zone_dev":\n\xe2\x94\x82  323:   records = [ aws_alb.application_load_balancer.dns_name ]\n\xe2\x94\x82 \n\xe2\x94\x82 An argument …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services terraform terraform-provider-aws aws-application-load-balancer

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

获取文件扩展名的可靠方法

在Java中获取文件扩展的可靠方法是什么?

我不是在谈论在substring/ lastIndexOf .File.getName(),因为它在复杂的扩展上是无用的,例如.tar.gz等等.(这就是那里的所有库(Commons IO,Guava等)似乎都在做的事情.我正在寻找一种更复杂/可靠的方法,它可以返回真正的扩展.

虽然这听起来像是许多其他问题的重复,但它并不相同.其他海报一直很满意一个简单的答案lastIndexOf ..这会破坏扩展名由多个点组成的情况.

是不是只有一种方法可以用来返回这个?

任何提示将不胜感激.

java path

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

如果您坚持使用 Guava 20.0,如何用替代方法替换 Guava 的 ImmutableSet.toImmutableSet() 收集器?

我遇到了一些需要大量工作才能解决的番石榴依赖问题。由于第三方库也依赖于 Guava(不幸的是我不得不使用它),我必须将我对 Guava 的依赖从27.0.1-jre一路降级到20.0. 除了下面的代码被破坏之外,似乎没有主要的副作用,因为ImmutableSet.toImmutableSet()它只在 Guava 中引入21.0

ImmutableSet.toImmutableSet();
Run Code Online (Sandbox Code Playgroud)

完整的代码块是:

cronJobDefinitions = cronJobsRegistry.get()
                                     .stream()
                                     .map(ThrowingFunction.unchecked(clazz -> clazz.newInstance()
                                                                                   .getCronJobDefinition()))
                                     .collect(ImmutableSet.toImmutableSet());
Run Code Online (Sandbox Code Playgroud)

也许有一种简单的方法可以用ImmutableSet.toImmutableSet()JDK 中的替代方法替换?我目前正在使用 JDK8,(但如果在较新的 JDK-s 中有更好的解决方案,我会很想知道)。

java guava

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

基本的java同步

我有一个问题,有什么区别

StringBuilder sb = new StringBuilder();
public void sync(){
  synchronized(sb){
  };
}
Run Code Online (Sandbox Code Playgroud)

public void sync(){
  synchronized(this){
  };
}
Run Code Online (Sandbox Code Playgroud)

java synchronization

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