我正在我的Java应用程序中构建一个命令行字符串(例如"winword.exe FinalReport.doc").我想执行命令然后放手:我不想/需要等待结果(最大值是:它是否正确启动,但这是可选的)当应用程序终止时应用程序需要继续运行.
我看了一下Runtime.getRuntime().exec()Apache Commons_Exec.两者都控制着已启动的应用程序(公共区域和回调显然更可取),但这不是我需要的.我错过了什么?
我是否需要调用Windows/Linux/Mac API来启动独立应用程序?
我正在使用Travis-CI for CI的企业安装。到目前为止,通过提交触发触发构建并使用加密值的效果很好。但是,对于部署,我需要连接到只能通过VPN隧道(基于OpenVPN)才能访问的服务器。我正在寻找.travis.yml具有VPN连接的示例文件。到目前为止,我的文件如下所示:
language: java
addons:
ssh_known_hosts: some.host.in.vpn.org
git:
depth: 3
before_install:
- sudo apt-get install -qq rpm
- openssl aes-256-cbc -K $encrypted_fancynumber_key -iv $encrypted_fancynumber_iv -in supersecret_rsa.enc -out supersecret_rsa -d
before_deploy:
- eval "$(ssh-agent -s)"
- chmod 600 $TRAVIS_BUILD_DIR/supersecret_rsa
- ssh-add $TRAVIS_BUILD_DIR/supersecret_rsa
deploy:
provider: script
skip_cleanup: true
script: rsync -r --delete-after --quiet $TRAVIS_BUILD_DIR/build travisdeploy@some.host.in.vpn.org:/opt/coolapp/war
on:
branch: master
Run Code Online (Sandbox Code Playgroud)
该脚本运行一个maven脚本(语言Java使travis查找pom.xml),并将构建目录rsync到服务器上。中间没有VPN,效果很好。
不确定问题是否应该在ServerFault上?
我在我的服务器上使用Apache凭据进行了一个couchDB设置(但如果分散注意力,我可以关闭它).
我在各种笔记本电脑上都有本地实例.现在我想设置安全(连续)复制.根据我的理解,我可以使用用户名/密码,SSL证书或OAuth.我发现了一些信息:
所有这些文件都增添了预感,但也让人感到困惑(我只是一个简单的想法).
我正在寻找的是一步一步的指导:
我在哪里可以找到它?
如何将谓词集合应用到 Java 流?
下面的代码将说明我的想法:
final Collection<Predicate<MyObject>> filters = getFilters();
final Stream<MyObject> oStream = getMyObjectStream();
oStream
.filterAll(filters) // <- this one doesn't exist
.forEach(System.out::println);
Run Code Online (Sandbox Code Playgroud)
我目前正在使用带有经典循环的函数.filter(m -> applyAllFilters(m, filters)),但想知道是否有更“流式”的方式?
boolean applyAllFilters(final MyObject m, final Collection<Predicate<MyObject>> filters) {
Iterator Predicate<MyObject> iter = filters.iterator();
while(iter.hasNext()) {
Predicate<MyObject> p = iter.next();
if (!p.test(m)) {
return false;
}
}
return true;
}
Run Code Online (Sandbox Code Playgroud) 在这里达到了我的理解极限。我有一个很大的文本文件,需要将其分成每块 200 行的块(使用 mime.types 进行练习)。我正在使用readline,但它似乎忽略了我的pause / resume陈述。我想念什么:
// Splits a given file into smaller subfiles by line number
var infileName = 'mime.types';
var fileCount = 1;
var count = 0;
var fs = require('fs');
var outfileName = infileName + '.' + fileCount;
var inStream = fs.createReadStream(infileName);
var outStream = fs.createWriteStream(outfileName);
var lineReader = require('readline').createInterface({
input: inStream
});
lineReader.on('line', function(line) {
count++;
lineReader.pause();
outStream.write(line + '\n');
if (count >= 200) {
fileCount++;
console.log('file ', outfileName, count);
outStream.close(); …Run Code Online (Sandbox Code Playgroud) 我需要构建一个 Docker 容器(感觉就像一个 N00b),它运行一个由 nginx Web 服务器前端的 Java 应用程序。出于不属于讨论的原因,我需要将它们放入一个容器中。
我想为此使用 Alpine。我发现两个镜像都包含安装了 nginx 的 Alpine 和安装了 JDK 的 Alpine。我需要将两者结合起来。
我最好的做法是什么?从nginx容器开始添加jdk还是从包含容器的jdk开始添加nginx?
或者是否可以选择组合 2 张图像(这是个好主意)。
见解表示赞赏。
在SO的帮助下解析内嵌图像后,我需要整理内联附件.PDF可以包含附件,我发现:fo:declarations - pdf:embedded-file但它再次指向外部文件.如何附加属于MIME消息的文件(很可能是BASe64)?
我想构建一个插件,当Notes客户端(8.5.2 ++)加载时,只要打开文档就会调用该插件,并获取该文档的(Notes)URL.我需要哪些扩展点和API?
澄清:
我确实知道如何获取当前文档(NotesUIWorkspace.currentDocument).我不知道的是如何(以及何时)注册一个监听器以获得通知.
特殊挑战:文档可以在Framesets(多个)中打开,文档可以作为复合页面的一部分打开.Frameset不是一个大问题,而是复合材料.如果这需要听任何页面打开并检查它 - 我很好
xpages包含SAVE按钮.xpages还包含InternetAddres字段.当用户单击SAVE按钮时,需要首先检查names.nsf - 如果在names.nsf视图中找不到InternetAddress值,则保存成功"($ Users)" - 如果在names.nsf视图中找到InternetAddress值,则保存失败"($ Users) "
如何编写脚本来做到这一点?
这是脚本的LotusScript版本:
Set namesview = namesdb.GetView( "($Users)" )
Set namesdoc = namesview.GetDocumentByKey( Lcase(doc.CurrentInternetAddress( 0 ) ), True )
If ( namesdoc Is Nothing ) Then '-- Create New Doc
Run Code Online (Sandbox Code Playgroud)
如何继续使用xpages?
我的设计器客户端是8.5.3FP6,Notes服务器是8.5.3FP6.
当我在Xpage中保存文档时,字段名称是从适当的大小写改为某些字段的全部大写.Notes表单上的字段名称在适当的情况下就像"Doc_Stage_TX",但是当通过文档属性在Notes客户端中检查时,它是"DOC_STAGE_TX".有人遇到过这种行为吗?
这是一个用于保存的SSJS代码:
document1.setValue("Section1_CompletedBy",unm);
@SetField("Section1DateCompleted",@Today())
document1.setValue("Section1Status","Marketing Check completed");
document1.setValue("Doc_Stage_TX","Stage 2");
document1.save();
Run Code Online (Sandbox Code Playgroud)
保存后,所有这些字段名称都是大写的.
java ×4
lotus-notes ×2
xpages ×2
alpine-linux ×1
apache-fop ×1
command-line ×1
couchdb ×1
docker ×1
eclipse ×1
java-8 ×1
java-stream ×1
mime ×1
nginx ×1
node.js ×1
oauth ×1
pdf ×1
registry ×1
replication ×1
save ×1
travis-ci ×1
xpages-ssjs ×1
xsl-fo ×1
xslt ×1