Java中是否有一个库可以执行以下操作?A thread应重复sleepx毫秒,直到条件变为真或达到最大时间.
当测试等待某些条件变为真时,这种情况通常发生.这种情况受到另一个人的影响thread.
[编辑]为了使它更清楚,我希望测试在失败前只等待X ms.它不能永远等待条件成为现实.我正在添加一个人为的例子.
class StateHolder{
boolean active = false;
StateHolder(){
new Thread(new Runnable(){
public void run(){
active = true;
}
}, "State-Changer").start()
}
boolean isActive(){
return active;
}
}
class StateHolderTest{
@Test
public void shouldTurnActive(){
StateHolder holder = new StateHolder();
assertTrue(holder.isActive); // i want this call not to fail
}
}
Run Code Online (Sandbox Code Playgroud) 我有一个具有多个阶段的 Dockerfile。中间阶段运行测试。如果测试失败,我希望构建停止,但它会继续,如下所示。您可以在失败的 RUN 命令之后继续看到输出。
# Base image
FROM python:3.5 as base
# For running tests
FROM base
WORKDIR /root
RUN mkdir /root/src
ADD src/requirements.txt /root/src
RUN pip install -r /root/src/requirements.txt
ADD . /root
RUN ["/bin/bash", "-c", "cd test; ./run-tests.sh"]
# For publishing src files
FROM base
ADD src /root/src
ADD .pypirc /root/.pypirc
WORKDIR /root/src
CMD python setup.py sdist upload -r local
Run Code Online (Sandbox Code Playgroud)
输出:
Step 6/13 : RUN pip install -r /root/src/requirements.txt
---> Using cache
---> 56fa7fc2f2e8
Step 7/13 : ADD . …Run Code Online (Sandbox Code Playgroud) 在某些情况下,作为开发环境设置的一部分,某些文件使用默认设置进行分发,并将这些文件签入svn.但我们不希望用户意外地对这些文件进行本地修改.
在svn中有可能做到这一点吗?我知道svn:ignore对已经签入的文件不起作用.或者是否有不同的实践来实现相同的结果?
我了解Java NIO(通道,选择器,..)。我想更好地了解Tomcat NIO,以便可以从Spring引导适当地配置Tomcat的线程池。
有人可以解释每个线程池的目的是什么,以及它们如何与Java NIO相关联?您还可以指出在HTTP请求的处理过程中使用了哪个线程池。
在线程转储期间观察到的一些Tomcat8线程池:
http-nio-<port>-Acceptor (usually 1 or 2 threads)
http-nio-<port>-ClientPoller-<index> (usually 2)
http-nio-<port>-exec-<index> (usually 10)
NioBlockingSelector.BlockPoller-<index> (usually 2)
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用充气城堡1.47来调试问题.我可以找到'bcprov'的调试jar但不能找到{org.bouncycastle:bcpkix-jdk15on:1.47:jar}.
有没有其他的地方可以下载bcpkix-jdk15on-1.47.jar和调试信息?
要么
是否有一个工具可以从jar(包含.class文件)生成行号而没有行号,也为同一个生成的jar生成源?
要么
我一直在尝试从源1构建jar,但是构建找不到我从错误中猜测的测试罐.
[javadoc] /tickets/bouncycastle/src-cvs/java/crypto/build/artifacts/jdk1.5/bcprov-jdk15on-147/src/org/bouncycastle/jce/provider/test/AllTests.java:5: package junit.framework does not exist
[javadoc] import junit.framework.Test;
[javadoc] ^
[javadoc] /tickets/bouncycastle/src-cvs/java/crypto/build/artifacts/jdk1.5/bcprov-jdk15on-147/src/org/bouncycastle/jce/provider/test/AllTests.java:6: package junit.framework does not exist
[javadoc] import junit.framework.TestCase;
[javadoc] ^
[javadoc] /tickets/bouncycastle/src-cvs/java/crypto/build/artifacts/jdk1.5/bcprov-jdk15on-147/src/org/bouncycastle/jce/provider/test/AllTests.java:7: package junit.framework does not exist
[javadoc] import junit.framework.TestSuite;
Run Code Online (Sandbox Code Playgroud)
任何帮助表示赞赏.
我正在尝试使用ADFS建立一个依赖方(SP).ADFS识别并响应没有签名的请求.但是ADFS无法验证签名的AuthRequest.我将证书导入依赖方的"签名验证证书"部分,但此证书似乎不用于依赖方请求的签名验证.
相反,它似乎使用'令牌解密'证书.我不明白这个证书的目的.有人可以解释一下这两个证书之间的区别,以及如何用另一个自签名证书(DER或pem格式)替换'token-decrypting'证书?谢谢
Fyi:将样本AuthnRequest发送到ADFS
<saml2p:AuthnRequest xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol" Destination="https://adfs-sj1.sjlab.local/adfs/ls/" ID="_422d0bb72b1120db737695464793dedf4ea8ddd2" IssueInstant="2012-07-30T21:52:47.501Z" Version="2.0">
<saml2:Issuer xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion">spid</saml2:Issuer>
<ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<ds:SignedInfo>
<ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
<ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
<ds:Reference URI="#_422d0bb72b1120db737695464793dedf4ea8ddd2">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
<ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<ds:DigestValue>S5b7PCF8WscoOX++EcpyjQNW4q0=</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
<ds:SignatureValue>g1PXYERi48Q/vGXNBPwZlteyihQmt3eo9+MIQlBdC8MqTsm8GdvE1Nq4osszEyprAK5Q6Uv5QV/UgctUWGV2hUxLc5bpXVwpaYaoywH0XPXArROR1EyGVz2g5YAjgGxpU0YbxJIk+2A1DblE0alYSK/88oHHcmpwp6dmgwmvfXcRA83DnVCeIZoKSPuNTqSLb6UKk+QxUABieuAb1ecsQmJsEjUXcrPq+RPL1+goNhC4/vbPatuK90ZyZe5CljwAtWXmqoBzWexxgWdzs4E9zIc/aQi/HFioGz0EnPiipgBjHRlV+Gv0iFV1dS++a24+F7H2NG6aZSGipcyj2kJMDg==</ds:SignatureValue>
</ds:Signature>
</saml2p:AuthnRequest>
Run Code Online (Sandbox Code Playgroud) java ×2
adfs ×1
bouncycastle ×1
docker ×1
dockerfile ×1
jar ×1
jce ×1
nonblocking ×1
saml ×1
security ×1
sleep ×1
svn ×1
tomcat ×1