在我的测试用例中,我需要测试时间敏感的方法,在那个方法中我们使用的是java 8类的LocalDate,它不是Joda.
当我正在进行测试时,我可以做些什么来改变时间
我在我的mac上创建了一个ubuntu docker容器
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5d993a622d23 ubuntu "/bin/bash" 42 minutes ago Up 42 minutes 0.0.0.0:123->123/tcp kickass_ptolemy
Run Code Online (Sandbox Code Playgroud)
我将端口设置为123.
我的容器IP是 172.17.0.2
docker inspect 5d993a622d23 | grep IP
"LinkLocalIPv6Address": "",
"LinkLocalIPv6PrefixLen": 0,
"SecondaryIPAddresses": null,
"SecondaryIPv6Addresses": null,
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"IPAddress": "172.17.0.2",
"IPPrefixLen": 16,
"IPv6Gateway": "",
"IPAMConfig": null,
"IPAddress": "172.17.0.2",
"IPPrefixLen": 16,
"IPv6Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
Run Code Online (Sandbox Code Playgroud)
在我的Mac上,我尝试ping我的容器,
Ping 172.17.0.2
,我得到icmp_seq 0的请求超时....
我该怎么办?所以我的本地机器可以ping我安装的容器.我是否在我的容器上缺少一些应用程序安装,这是一个普通的ubuntu系统?
我最近将bash执行命令重写为Jenkins管道.旧代码就像
...
source environment.sh
//Build
//Test
...
Run Code Online (Sandbox Code Playgroud)
现在我使用管道脚本来包装命令,就像这样
sh '''
...
source environment.sh
//Build
//Test
...
'''
Run Code Online (Sandbox Code Playgroud)
但是,我收到了一个错误,因为.../.jenkins/script.sh: line 9: source: environment.sh: file not found
.当我尝试时less environment.sh
,它显示正确.所以我怀疑有毛病source command
内sh wrap
.
在使用管道之前,source environment.sh
命令在shell执行中正常工作.所以源代码安装在Jenkins服务器上,似乎管道脚本不知道源代码是什么.
如何在sh包装块中运行source命令?
我在Ansible配置中有一个字典列表
myList
- name: Bob
age: 25
- name: Alice
age: 18
address: USA
Run Code Online (Sandbox Code Playgroud)
我把代码编写为
- name: loop through
debug: msg ="{{item.key}}:{{item.value}}"
with_items: "{{ myList }}"
Run Code Online (Sandbox Code Playgroud)
我想要打印出来
msg: "name:Bob age:25 name:Alice age:18 address:USA"
Run Code Online (Sandbox Code Playgroud)
如何遍历此字典并获取键和值对?因为它不知道什么是关键.如果我更改为{{item.name}},ansible将起作用,但我也想知道密钥
我必须删除一些目录并在复制到远程之前在本地创建它们.反正有没有在本地删除和创建?
目前我正在使用'命令'
command: rm -r directory
Run Code Online (Sandbox Code Playgroud)
但警告显示为
Consider using file module with state=absent rather than running rm
Run Code Online (Sandbox Code Playgroud)
我们可以使用任何选项来更改本地文件夹吗?
我是 Erlang 的新学习者,我对 Erlang 变量的生命周期有疑问。
-module(wy).
-compile(export_all).
-export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, code_change/3]).
-behaviour(gen_server).
-record(state, {id ,m, succ, pred}).
start(Name, M) ->
gen_server:start_link({local, Name}, ?MODULE, [Name, M], []).
init([Name, M]) ->
{ok, #state{id = Name, m = M}}.
handle_call({get_server_info}, _Frome, State) ->
{reply, State, State};
handle_call(_Request, _From, State) ->
Reply = ok,
{reply, Reply, State}.
handle_cast(_Msg, State) ->
{noreply, State}.
handle_info(_Info, State) ->
{noreply, State}.
terminate(_Reason, _State) ->
ok.
code_change(_OldVsn, State, _Extra) ->
{ok, State}.
get_server_info(ServerName) -> …
Run Code Online (Sandbox Code Playgroud) 我是 SCPClient 模块的新手
我有复制样本
with SCPClient(ssh.get_transport()) as scp:
scp.put(source, destination)
Run Code Online (Sandbox Code Playgroud)
这段代码运行良好。
不过,由于我要复制几个大文件,复制进度需要时间,一味地等待完成并不是很好的用户体验。
无论如何,我可以监控它复制了多少吗?并获取复制成功与否的结果?
SCPClient 有官方文档可以阅读吗?
我有一个人的域名
public class Person{
String name;
}
Run Code Online (Sandbox Code Playgroud)
我有一个列表的人名字符串,如
listRange = new ListWith("Bob","John","Mark");
Run Code Online (Sandbox Code Playgroud)
我如何使用Java 8流在resultList中过滤,哪个人在此范围列表中具有名称.可能就像
resultList.stream().filter(p->p.getName().equals(listRange.any).collect();
Run Code Online (Sandbox Code Playgroud)
如何使用Lambda过滤resultList?
在内存测试中编写休眠模式时出现异常。
org.hibernate.id.IdentifierGenerationException:此类的ID必须在调用save()之前手动分配:
@Entity
public Account{
@Id
String num;
}
Run Code Online (Sandbox Code Playgroud)
首先,此pojo的id是String,我无法更改它,我无权访问数据库并更改pojo,我所能做的就是创建内存中测试。
然后,在保存此pojo之前,我填充了该pojo中的每个字段,但仍然会引发此异常。并且由于进行了内存中测试,因此内存中的DB为空,因此那里没有冲突ID。
任何想法,还有什么会导致此异常?
我需要从列表中删除一些项目
"my_list_one": [
"item1",
"item2",
"item3"
] }
Run Code Online (Sandbox Code Playgroud)
我需要删除包含字符串"2"的项目.结果,我需要列表为
"my_list_one": [
"item1",
"item3"
] }
Run Code Online (Sandbox Code Playgroud)
我怎么能意识到这一点?
我有一个应用程序从数据库中检索数据,我监视我的应用程序检索数据所需的时间.
但是当我使用相同的数据输入集来检索我的应用程序的数据时,我遇到了一个问题,第二次检索将花费更少的时间.
我假设Java或Hibernate有一些缓存或临时文件来保存数据,所以第二次运行会很快,但我不希望它发生.我需要监视它实际需要的时间,而不是从缓存或临时文件中检索的时间.
我试图禁止在Java控制面板中生成缓存和临时文件,我试图禁用hibernate缓存(第一级或第二级).但这些仍然无法解决我的问题.第二次运行仍然花费的时间少于应该花费的时间.
任何想法导致第二次运行更快的原因?它只是一个从DB检索数据的简单应用程序
我有一块 Ansible,使用with_fileglob
.
如何排除名称包含的文件useless
?
- set_fact: files:{{item}}
with_fileglob:
- "path/to/*.tar.gz | exclude "useless"
Run Code Online (Sandbox Code Playgroud)
换句话说,我不想得到带有“useless”这样的字符串的文件名。
我怎么能意识到呢?
ansible ×4
java ×4
ansible-2.x ×2
hibernate ×2
java-8 ×2
python ×2
bash ×1
caching ×1
collections ×1
docker ×1
erlang ×1
erlang-otp ×1
gen-server ×1
java-stream ×1
java-time ×1
jenkins ×1
lambda ×1
linux ×1
macos ×1
networking ×1
python-2.x ×1
shell ×1
systemtime ×1