小编Dav*_*ary的帖子

OpenJDK Java 17 docker 镜像

我们正在升级 docker 中的微服务以使用 Java 17,之前我们使用基础镜像 openjdk:11-jre-slim。Java 17对应的镜像是什么?

好像没有openjdk:17-jre-slim?事实上,似乎没有任何最新的 jre 映像 - 只有 jdks。11-jre-slim 映像似乎约为 75MB - 是否有合适的类似大小的 Java 17 映像?

我们过去也使用过高山图像。

java docker java-17

92
推荐指数
5
解决办法
14万
查看次数

没有Spring Boot的Spring Cloud Config客户端

我们将现有的Spring Web应用程序部署为Amazon Elastic Beanstalk中的WAR文件.目前,我们将属性文件作为http资源加载,以便为我们提供单一的属性占位符配置解析源.我正在调查用新的Spring云配置服务器替换它,以便为我们提供git版本控制等的好处.

但是文档(http://cloud.spring.io/spring-cloud-config/spring-cloud-config.html)似乎只描述了一个Spring Boot客户端应用程序.是否可以在现有的Web应用程序中设置Spring Cloud Config Client?我是否需要手动设置Bootstrap父应用程序上下文等 - 这是否有任何示例?我们当前的spring配置是基于XML的.

spring spring-cloud

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

Spring Batch 3.0中对作业范围bean的多线程访问

在Spring Batch 3.0中,我试图在分区和多线程步骤(使用任务:executor bean配置)中为bean使用新的Job Scope功能,在这两种情况下我都得到了异常

  Caused by: java.lang.IllegalStateException: No context holder available for job scope
        at org.springframework.batch.core.scope.JobScope.getContext(JobScope.java:153)
        at org.springframework.batch.core.scope.JobScope.get(JobScope.java:92)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:338)
Run Code Online (Sandbox Code Playgroud)

但如果我做豆步范围它就可以了.

我注意到JobSynchronizationManager上的评论说

注意,每个{@link Job}实现都有责任确保{@link JobContext}可用于可能涉及作业执行的每个线程,包括池中的工作线程.

所以我想知道我是否需要做一些事情来设置它,或者它是否在作业范围实现中的一个错误,它没有正确设置工作线程?

StepSynchronizationManager有一个类似的注释 - 但在这种情况下,显然在步骤中正确设置了线程.

重现问题的示例代码:

TestItemReader

package test;

import java.util.ArrayList;
import java.util.List;

import org.springframework.batch.item.ItemReader;
import org.springframework.batch.item.NonTransientResourceException;
import org.springframework.batch.item.ParseException;
import org.springframework.batch.item.UnexpectedInputException;
import org.springframework.beans.factory.InitializingBean;

public class TestItemReader implements ItemReader<Integer>, InitializingBean {

    private List<Integer> items;

    @Override
    public synchronized Integer read() throws Exception, UnexpectedInputException,
            ParseException, NonTransientResourceException {

        if (items.size() > 0) {
            return items.remove(0);
        }

        return null;
    } …
Run Code Online (Sandbox Code Playgroud)

spring-batch

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

标签 统计

docker ×1

java ×1

java-17 ×1

spring ×1

spring-batch ×1

spring-cloud ×1