调试vert.x代码时,BlockedThreadChecker会导致大量的stdout.这个问题与vert.x 3有关.
我有一个Jenkins管道作业,配置为签出一个git仓库和一个特定的本地分支.
如何在Jenkinsfile中获取本地分支的名称?
我试图加载git jenkins插件 env属性,但没有运气.
node {
checkout scm
echo "1 "+ env.GIT_LOCAL_BRANCH
echo "2 "+ env.GIT_BRANCH
}
Run Code Online (Sandbox Code Playgroud)
两个值均为"null"
Elasticsearch:6.1.2
我有一个通过JSON的输入查询,并希望使用高级Java API来使用该查询数据构建搜索请求.
String jsonQuery = "..."
SearchRequest searchRequest = new SearchRequest()
SearchSourceBuilder builder = ?
searchRequest.source(builder);
Run Code Online (Sandbox Code Playgroud)
我尝试通过以下方式构建构建器:
SearchSourceBuilder.fromXContent(XContentType.JSON.xContent().createParser(NamedXContentRegistry.EMPTY, query));
Run Code Online (Sandbox Code Playgroud)
但是产量:
引起:org.elasticsearch.ElasticsearchException:org.elasticsearch.common.xcontent.NamedXContentRegistry.parseNamedObject(NamedXContentRegistry.java:129)〜[elasticsearch-6.1.2.jar:6.1.2] at此解析器不支持namedObject org.elasticsearch.common.xcontent.support.AbstractXContentParser.namedObject(AbstractXContentParser.java:402)〜[elasticsearch-6.1.2.jar:6.1.2] at org.elasticsearch.index.query.AbstractQueryBuilder.parseInnerQueryBuilder(AbstractQueryBuilder.java) :313)〜[elasticsearch-6.1.2.jar:6.1.2]在org.elasticsearch.search.builder.SearchSourceBuilder.parseXContent(SearchSourceBuilder.java:1003)〜[elasticsearch-6.1.2.jar:6.1.2]在org.elasticsearch.search.builder.SearchSourceBuilder.fromXContent(SearchSourceBuilder.java:115)〜[elasticsearch-6.1.2.jar:6.1.2]
处理在具有多个修补程序分支的git流环境中准备maven版本导致的重复合并冲突的最佳实践是什么?
(见http://nvie.com/posts/a-successful-git-branching-model/)
在这种情况下,需要多个修补程序分支来维护应用程序的至少两个修订版.oldstable的修复程序会定期合并到newstable修补程序分支中.那些发布分支之间的那些合并导致了反复出现的合并冲突,我将在下面解释:
每个分支的pom.xml工件版本都是唯一的.
例:
master - <version>1.2.0</version> (Contains the latest release)
\
dev - <version>1.3.0-dev-SNAPSHOT</version> (Contains changes for the next release)
|\
| hotfix-oldstable - <version>1.1.1-hotfix-SNAPSHOT</version> (Contains new hotfixes for the oldstable version)
| \
| release-oldstable - <version>1.1.1-SNAPSHOT</version> (Is used to prepare the release)
\
\
hotfix-newstable - <version>1.2.1-hotfix-SNAPSHOT</version> (Contains new hotfixes for the newstable version)
\
release-newstable - <version>1.2.1-SNAPSHOT</version> (Is used to prepare the release)
Run Code Online (Sandbox Code Playgroud)
我目前的工作流程如下:
我想使用 Lucene 来运行最近邻搜索。我在 JVM 11 上使用 Lucene 9.0.0。我没有找到太多文档,主要尝试使用现有测试将内容拼凑在一起。
我编写了一个准备 a 的小测试,HnswGraph但到目前为止搜索并未产生预期结果。我设置了一组随机向量并添加了一个非常接近我的搜索目标的最终向量(0.99f,0.01f)。不幸的是,搜索从未返回预期值。我不确定我的错误在哪里。我认为这可能与插入和文档 ID 顺序有关。
也许更熟悉 lucene 的人可以提供一些反馈。我的做法正确吗?我使用文档只是为了持久性。
HnswGraphBuilder builder = new HnswGraphBuilder(vectors, similarityFunction, maxConn, beamWidth, seed);
HnswGraph hnsw = builder.build(vectors);
// Run a search
NeighborQueue nn = HnswGraph.search(
new float[] { 1, 0 },
10,
10,
vectors.randomAccess(), // ? Why do I need to specify the graph values again?
similarityFunction, // ? Why can I specify a different similarityFunction for search. Should that not be the same …Run Code Online (Sandbox Code Playgroud) 我试图在多线程环境(Java 8)中使用orientdb(v2.1.2),我在多个线程中更新顶点.我知道orientdb正在使用MVCC,因此这些操作可能会失败并且必须再次执行.
我写了一个小单元测试,试图通过等待我fork的线程中的循环障碍来激发这种情况.不幸的是,测试失败了一个模糊的异常,我不明白:
Sep 21, 2015 3:00:24 PM com.orientechnologies.common.log.OLogManager log
INFO: OrientDB auto-config DISKCACHE=10,427MB (heap=3,566MB os=16,042MB disk=31,720MB)
Thread [0] running
Thread [1] running
Sep 21, 2015 3:00:24 PM com.orientechnologies.common.log.OLogManager log
WARNING: {db=tinkerpop} Requested command 'create edge type 'testedge_1442840424480' as subclass of 'E'' must be executed outside active transaction: the transaction will be committed and reopen right after it. To avoid this behavior execute it outside a transaction
Sep 21, 2015 3:00:24 PM com.orientechnologies.common.log.OLogManager log
WARNING: {db=tinkerpop} Requested command 'create edge …Run Code Online (Sandbox Code Playgroud) 我想在我的jenkins mutibranch管道作业中添加额外的构建参数.
相关版本:
我的詹金斯档案:
如您所见,前四行应该添加构建参数选项.
import hudson.model.*
def build = Thread.currentThread().executable;
build.addAction(new ParametersAction(new StringParameterValue("SVN_UPSTREAM", build.getEnvVars()['SVN_REVISION'])));
println "SVN_UPSTREAM:" + build.getEnvVars()['SVN_UPSTREAM'];
node('dockerSlave') {
stage 'Checkout'
checkout scm
def mvnHome = tool 'M3'
stage 'VersionSet'
def v = version()
if (v) {
echo "Building version ${v}"
}
sh "${mvnHome}/bin/mvn versions:set -DnewVersion=${env.BUILD_NUMBER}"
stage 'Build'
sshagent(['601b6ce9-37f7-439a-ac0b-8e368947d98d']) {
sh 'echo SSH_AUTH_SOCK=$SSH_AUTH_SOCK'
sh "${mvnHome}/bin/mvn -B -Dmaven.test.failure.ignore clean deploy scm:tag"
step([$class: 'JUnitResultArchiver', testResults: '**/target/surefire-reports/TEST-*.xml'])
}
}
def version() {
def matcher = readFile('pom.xml') =~ …Run Code Online (Sandbox Code Playgroud) 我想在常规管道作业中触发特定的多分支管道作业' maven-release-workflow-test '(特定分支)。我需要指定一种特殊的build()命令模式吗?
摘要生成器仅打印:
没有这样的工作maven-release-workflow-test
我创建了一个非常基本的maven项目:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>de.jotschi</groupId>
<artifactId>test</artifactId>
<version>0.0.1-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<source>9</source>
<target>9</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
Run Code Online (Sandbox Code Playgroud)
它只有一个de.jotschi.App主类和一个/test/src/main/java/module-info.java定义和导出模块的文件:
module test {
exports de.jotschi;
}
Run Code Online (Sandbox Code Playgroud)
如果我在eclipse中运行App类,我会看到以下错误:
初始化引导层java.lang.module.FindException期间发生错误:找不到模块测试
Eclipse:Oxygen.1版本(4.7.1)+ Java 9支持氧气
Java:9 + 181
我正在使用 Eclipse 2023-09 (4.29.0),最近注意到我的类/变量上的悬停/鼠标悬停对话框是空的。文本似乎在框中,因为我可以选择并复制粘贴它(选择仍然不可见)。带有死代码警告的悬停框看起来仍然很好。我不确定是什么导致了这个问题。
我可以提供以下事实:
当我尝试将鼠标悬停在字段/变量上时,我在日志中看到以下错误。
src/nv_gbm.c:100: GBM-DRV error (nv_gbm_bo_create):
DRM_IOCTL_NVIDIA_GEM_ALLOC_NVKMS_MEMORY failed (ret=-1)
Run Code Online (Sandbox Code Playgroud)
我认为问题可能与我的 Nvidia 驱动程序或以专用方式调用驱动程序的东西有关。
欢迎任何指点,因为这个问题基本上使我的 Eclipse IDE 几乎无法使用。
我有一个列表List<Single<String>>,我想变成一个List<String>.
应保留订单,并且应并行处理所有Single.
List<Single<String>> list = new ArrayList<>();
for (int i = 0; i < 10; i++) {
list.add(createSingle(i));
}
// Dummy method which creates a single instance
private Single<String> createSingle(int i) {
return Single.create(sub -> {
new Thread(() -> {
try {
Thread.sleep(800);
} catch (InterruptedException e) {
e.printStackTrace();
}
sub.onSuccess("test_" + i);
}).start();
});
}
Run Code Online (Sandbox Code Playgroud)
我使用了我的初始实现,Observable.concatWith但这基本上会阻止并行处理,因为每个单元都是一个接一个地订阅.
我也知道我可以将单曲列表转换成一个发出字符串的Observable,但在这种情况下我放松了顺序.
List<Observable<String>> obsList = list.stream().map(Single::toObservable).collect(Collectors.toList());
Observable.merge(obsList).....
Run Code Online (Sandbox Code Playgroud)