小编rjd*_*olb的帖子

将字符串写入输出流

我有几个正在实现OutputStream的输出侦听器.它可以是写入stdout或文件的PrintStream,也可以是写入内存或任何其他输出目的地; 因此,我将OutputStream指定为方法中的(a)参数.

现在,我收到了String.在这里写入流的最佳方式是什么?

我应该只使用Writer.write(message.getBytes())吗?我可以给它字节,但如果目标流是字符流,那么它会自动转换吗?

我需要在这里使用一些桥流吗?

java stream

131
推荐指数
6
解决办法
32万
查看次数

如何调试"ImagePullBackOff"?

突然之间,我无法部署一些以前可以部署的图像.我得到了以下pod状态:

[root@webdev2 origin]# oc get pods 
NAME                      READY     STATUS             RESTARTS   AGE 
arix-3-yjq9w              0/1       ImagePullBackOff   0          10m 
docker-registry-2-vqstm   1/1       Running            0          2d 
router-1-kvjxq            1/1       Running            0          2d 
Run Code Online (Sandbox Code Playgroud)

该应用程序不会启动.pod没有尝试运行容器.从事件页面,我有Back-off pulling image "172.30.84.25:5000/default/arix@sha256:d326.我已经确认我可以使用标签来拉取图像docker pull.

我还检查了最后一个容器的日志.由于某种原因它被关闭了.我认为pod应该至少尝试重新启动它.

我已经没有想法调试问题了.我还可以查看更多内容?

openshift openshift-origin kubernetes

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

将目录添加到tomcat类路径

我的C:驱动器中有一个文件夹,因为C:\app_config\java_app 此文件夹包含一些特定于语言环境的属性文件.

我有一个java类(PrjPropertilesLocator)在Web App启动时基于默认语言环境加载属性文件.我的Web应用程序在tomcat中运行.问题是我应该如何C:\app_config\java_app在tomcat类路径中设置这个目录,以便它可以在PrjPropertilesLocator类中的ResourceBundle中使用.有没有办法我可以专门为需要它的单个Web应用程序设置此文件夹.我不想将属性文件放在WEB-INF/classes文件夹中.

在weblogic上运行正常.我在其中一个启动脚本中设置了weblogic类路径中的目录,它工作正常.但在Tomcat我试图把它startup.bat还在setclasspath.bat,但没能成功地这样做.

tomcat classpath

67
推荐指数
4
解决办法
19万
查看次数

Spring Data JPA Update @Query没有更新?

我有一个更新查询:

@Modifying
@Transactional
@Query("UPDATE Admin SET firstname = :firstname, lastname = :lastname, login = :login, superAdmin = :superAdmin, preferenceAdmin = :preferenceAdmin, address =  :address, zipCode = :zipCode, city = :city, country = :country, email = :email, profile = :profile, postLoginUrl = :postLoginUrl WHERE id = :id")
public void update(@Param("firstname") String firstname, @Param("lastname") String lastname, @Param("login") String login, @Param("superAdmin") boolean superAdmin, @Param("preferenceAdmin") boolean preferenceAdmin, @Param("address") String address, @Param("zipCode") String zipCode, @Param("city") String city, @Param("country") String country, @Param("email") String email, @Param("profile") String …
Run Code Online (Sandbox Code Playgroud)

java jpa spring-data

47
推荐指数
3
解决办法
12万
查看次数

通过Windows命令行启动网站

我有一个程序通过以下命令启动一个网站.

cmd "start /max http://url.com"
Run Code Online (Sandbox Code Playgroud)

通过此方法启动网站时,它使用默认浏览器及其默认设置来打开新窗口.例如,如果设置为这样,Firefox和IE将在现有窗口的选项卡内打开窗口.我有IE 6的报告用url.com的内容替换当前打开的窗口的内容.我已经对此进行了测试,当IE 6被设置为默认浏览器并打开当前网页时,上面将用url.com替换打开窗口的内容,而不是打开一个新窗口.

运行一些测试后,我看到这里列出的命令:

cmd "start /max iexplore.exe http://url.com"
Run Code Online (Sandbox Code Playgroud)

无论现有窗口是否存在,都将始终打开一个新窗口(当然使用Internet Explorer).

任何人都可以告诉我,如果我在IE 6中错过了一个愚蠢的设置,或者是否有办法通过直接调用iexplore.exe来复制"总是打开一个新窗口"功能,而是调用用户默认浏览器.

browser windows command-line cmd

42
推荐指数
5
解决办法
16万
查看次数

使用@Mock和@InjectMocks

我目前正在研究Mockito框架,并且我使用Mockito创建了几个测试用例.但后来我读到的不是调用模拟(SomeClass的的.class)我可以使用@Mock@InjectMocks-我需要做的唯一一件事情就是我的注释测试类@RunWith(MockitoJUnitRunner.class)或使用MockitoAnnotations.initMocks(this);@Before方法.

但它不起作用 - 似乎@Mock不会起作用!这是我的2个代码修订版 - 一个使用注释,一个没有.

我究竟做错了什么?

public class ReportServiceImplTestMockito {

    private TaskService       mockTaskService; // This is the Mock object
    private ReportServiceImpl service;

    @Before
    public void init(){
        service         = new ReportServiceImpl();
        mockTaskService = mock(TaskServiceImpl.class);
        service.setTaskServiceImpl(mockTaskService);
    }
/// ...

 Some tests
}
Run Code Online (Sandbox Code Playgroud)

正如我所说 - 这项工作很棒.但以下不会:

@RunWith(MockitoJUnitRunner.class)
public class ReportServiceImplTestMockito {

     @Mock 
     private TaskService      mockTaskService;

     @InjectMocks 
     private ReportServiceImpl service;

         // Some tests
}
Run Code Online (Sandbox Code Playgroud)

这是ReportServiceImpl班级:

@Service
public …
Run Code Online (Sandbox Code Playgroud)

java mocking mockito

36
推荐指数
2
解决办法
8万
查看次数

如何为Java 11编译和运行我的Maven单元测试,同时为旧版Java 8编译我的代码

我想在单元测试中使用Java 11语法,但我的'main'代码需要为Java 8编译,因为我的生产环境只安装了JDK 8.

有没有办法用maven-compiler-plugin做到这一点?我的Jenkins服务器安装了Java 11.

我将接受在生产代码中偶然使用Java 11特定功能的风险.

java junit unit-testing maven jenkins

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

Atom文本编辑器将"^ M"添加到空行

Atom文本编辑器将此符号添加到每个空行.

知道什么和为什么?

在此输入图像描述

git atom-editor

15
推荐指数
2
解决办法
6843
查看次数

如何让kubelet使用HTTPS与apiserver通信?v0.19

我在主节点(core01)上部署了apiserver,其中包含以下conf:

core01> /opt/bin/kube-apiserver \
  --insecure_bind_address=127.0.0.1 \
  --insecure_port=8080 \
  --kubelet_port=10250 \
  --etcd_servers=http://core01:2379,http://core02:2379,http://core03:2379 \
  --service-cluster-ip-range=10.1.0.0/16 \
  --allow_privileged=false \
  --logtostderr=true \
  --v=5 \
  --tls-cert-file="/var/run/kubernetes/apiserver_36kr.pem" \
  --tls-private-key-file="/var/run/kubernetes/apiserver_36kr.key" \
  --client-ca-file="/var/run/kubernetes/cacert.pem" \
  --kubelet-certificate-authority="/var/run/kubernetes/cacert.pem" \
  --kubelet-client-certificate="/var/run/kubernetes/kubelet_36kr.pem" \
  --kubelet-client-key="/var/run/kubernetes/kubelet_36kr.key"
Run Code Online (Sandbox Code Playgroud)

在minion节点(core02)上,我可以从HTTPS调用api:

core02> curl https://core01:6443/api/v1/nodes --cert /var/run/kubernetes/kubelet_36kr.pem --key /var/run/kubernetes/kubelet_36kr.key
> GET /api/v1/nodes HTTP/1.1
> Host: core01:6443
> User-Agent: curl/7.42.1
> Accept: */*
> 
< HTTP/1.1 200 OK
< Content-Type: application/json
< Date: Sat, 27 Jun 2015 15:33:50 GMT
< Content-Length: 1577
< 
{
  "kind": "NodeList",
  "apiVersion": "v1",
  "metadata": {
    "selfLink": …
Run Code Online (Sandbox Code Playgroud)

kubernetes

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

在docker build期间设置DNS选项

由于本地网络配置,我必须在我的docker run命令中添加--dns和--dns-search选项,如下所示:

docker run --dns XX.XX.1.1 --dns-search companydomain -t mycontainer
Run Code Online (Sandbox Code Playgroud)

但是,docker build没有相同的选项.有没有办法在构建期间指定这些选项?

dns docker

14
推荐指数
2
解决办法
9735
查看次数