我在 Windows 10 上安装了 TexLive 后,在 VSCode 中编写 Latex 代码我正在使用 Arara。
% arara: pdflatex: { shell: yes }
%! arara: biber
% arara: pdflatex
%! arara: pdflatex
一切都进行得很顺利,直到昨天,读完这个问题后Java 阻塞 arara,我已将 Arara 更新至最新版本 7.1.1。
之前,在将 Arara 更新到 v7.1.1 之前,我曾Java 正则表达式安装并且 Arara 运行良好并java -version
在终端运行结果为:
java version "1.8.0_381"
Java(TM) SE Runtime Environment (build 1.8.0_381-b09)
Java HotSpot(TM) Client VM (build 25.381-b09, mixed mode, sharing)
出于其他目的,我必须安装打开jdk21java -version
并在终端结果中运行现在在:
openjdk version "21" 2023-09-19
OpenJDK Runtime Environment (build 21+35-2513)
OpenJDK 64-Bit Server VM (build 21+35-2513, mixed mode, sharing)
我从该问题下面的一条评论中得知,Arara 与 Java 21 的不兼容性已在 Arara 7.1.1 版本中得到修复。
现在我已经通过以下方式更新了 Arara 包閱讀器到版本 7.1.1 但是当我构建我的 Latex 项目时,我得到以下信息:
Exception in thread "main" java.lang.UnsatisfiedLinkError: Can't obtain class com.sun.jna.CallbackReference
at com.sun.jna.Native.initIDs(Native Method)
at com.sun.jna.Native.<clinit>(Native.java:248)
at com.github.ajalt.mordant.internal.Win32MppImpls.<init>(JnaMppImplsWin32.kt:73)
at com.github.ajalt.mordant.internal.MppImplKt.<clinit>(MppImpl.kt:96)
at com.github.ajalt.mordant.terminal.TerminalDetection.isJediTerm(TerminalDetection.kt:143)
at com.github.ajalt.mordant.terminal.TerminalDetection.isIntellijRunActionConsole(TerminalDetection.kt:169)
at com.github.ajalt.mordant.terminal.TerminalDetection.detectTerminal(TerminalDetection.kt:16)
at com.github.ajalt.mordant.terminal.StdoutTerminalInterface.<init>(StdoutTerminalInterface.kt:17)
at com.github.ajalt.mordant.terminal.Terminal.<init>(Terminal.kt:56)
at com.github.ajalt.mordant.terminal.Terminal.<init>(Terminal.kt:45)
at com.github.ajalt.clikt.core.Context$Builder.<init>(Context.kt:227)
at com.github.ajalt.clikt.core.Context$Companion.build$clikt(Context.kt:312)
at com.github.ajalt.clikt.core.CliktCommand.createContext(CliktCommand.kt:141)
at com.github.ajalt.clikt.core.CliktCommand.parse(CliktCommand.kt:456)
at com.github.ajalt.clikt.core.CliktCommand.parse$default(CliktCommand.kt:455)
at com.github.ajalt.clikt.core.CliktCommand.main(CliktCommand.kt:475)
at com.github.ajalt.clikt.core.CliktCommand.main(CliktCommand.kt:482)
at org.islandoftex.arara.cli.CLIKt.main(CLI.kt:382)
我试过删除打开 JdK 21从我的电脑并重新安装Java Re 但是Arara v 7.1.1仍然不起作用。
答案1
对于任何有兴趣降级到 TeXlive 7.1.0 版本的人
如果运行tlmgr option autobackup
返回一个正数,例如
tlmgr option autobackup
Number of backups to keep (autobackup): 1
然后您可以运行tlmgr restore arara 67201
恢复 arara v7.1.0。
解决方案取自这里
Edit1:当然你如果降级到 7.1.0,则不得运行 JVM 21否则它将继续不起作用。
编辑2:参见上面的@TeXnician 评论