Version: 'org.asciidoctor:asciidoctorj-pdf:1.5.0-alpha.16'
When running Gradle task :documentation:asciidoctor on the current JUnit 5 master branch on Windows, the following stacktrace is produced:
[...]
Caused by: org.gradle.api.GradleException: Error running Asciidoctor
at org.asciidoctor.gradle.AsciidoctorTask.processDocumentsAndResources(AsciidoctorTask.groovy:663)
at org.asciidoctor.gradle.AsciidoctorTask.processAsciidocSources(AsciidoctorTask.groovy:596)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.doExecute(DefaultTaskClassInfoStore.java:141)
at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:134)
at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:121)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:731)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:705)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:122)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:111)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)
... 27 more
Caused by: org.jruby.exceptions.RaiseException: (SystemCallError) Unknown error (SystemCallError) 123 - FindFirstFile
at RUBY.symlink?(uri:classloader:/jruby/kernel/file.rb:141)
at RUBY.<module:Prawn>(uri:classloader:/gems/prawn-2.2.2/lib/prawn.rb:11)
at RUBY.<main>(uri:classloader:/gems/prawn-2.2.2/lib/prawn.rb:9)
at org.jruby.RubyKernel.require(org/jruby/RubyKernel.java:961)
at RUBY.(root)(uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:1)
at RUBY.<main>(uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:54)
at org.jruby.RubyKernel.require(org/jruby/RubyKernel.java:961)
at RUBY.(root)(uri:classloader:/gems/asciidoctor-pdf-1.5.0.alpha.16/lib/asciidoctor-pdf/converter.rb:3)
at RUBY.<main>(uri:classloader:/jruby/kernel/kernel.rb:1)
at org.jruby.RubyKernel.require(org/jruby/RubyKernel.java:961)
at RUBY.require_relative(uri:classloader:/jruby/kernel/kernel.rb:13)
at RUBY.<main>(uri:classloader:/gems/asciidoctor-pdf-1.5.0.alpha.16/lib/asciidoctor-pdf.rb:3)
BUILD FAILED in 4s
20 actionable tasks: 9 executed, 11 up-to-date
(SystemCallError) Unknown error (SystemCallError) 123 - FindFirstFile
23:32:14: External task execution finished 'asciidoctor --stacktrace'.
Work-around: dont add the pdf backend to asciidoctor task configuration.
Can you share which version of Java and which version of JRuby are being used? There are a known issues with various Java and JRuby combinations on Windows, so the version you use is very important.
jdk1.8.0_121 x64 and JRuby... I didn't install it manually. Will check the logs for the JRuby version.
Can it extracted from here: https://github.com/junit-team/junit5/blob/master/documentation/documentation.gradle ?
Update: jdk1.8.0_144 produces the same error
According to the build log it's: jruby-complete-9.1.12.0.jar
Found: https://github.com/jruby/jruby/issues/4745 - seems to match exactly.
How do I upgrade the JRuby version now...
You can set the version of JRuby that Gradle uses with the following configuration:
jruby.execVersion '9.1.13.0'
Actually, since this build doesn't use the JRuby Gradle plugin, it's just a matter of defining the jruby-complete dependency on the classpath. AsciidoctorJ brings in a default version, but you can override it in the normal way. It's just a library.
buildscript {
dependencies {
...
classpath 'org.jruby:jruby-complete:9.1.13.0'
}
}
Thanks Dan!
Solved via https://github.com/junit-team/junit5/commit/82f00c7a82d7aeccb54f1ff29194f7fa5a585766
Using JRuby 9.1.14, it now fails on Linux. See https://github.com/junit-team/junit5/issues/1099#issuecomment-345517452 or https://github.com/jruby/jruby/issues/4805#issuecomment-346008259
On Windows, I can create the PDF.
Most helpful comment