biber 生成空的 bbl 文件

biber 生成空的 bbl 文件

我使用biblatexwithbiber作为其后端。我的代码如下 ( test.tex):

\documentclass{article}
\usepackage[backend=biber]{biblatex}
\addbibresource{ref.bib}

\begin{document}
Test test test \cite{Lee2009a}
\printbibliography
\end{document}

并且ref.bib

@article{Lee2009a,
    author  = {Lee, Geun},
    journal = {The Korean Journal of Defense Analysis},
    number  = {2},
    pages   = {205--218},
    title   = {{A Theory of Soft Power and Korea's Soft Power Strategy}},
    volume  = {21},
    year    = {2009}
}

我运行biberpdflatex但是,它只返回一个空的 bbl 文件。所有的blg 文件是

[0] Config.pm:354> INFO - This is Biber 2.7
[1] Config.pm:357> INFO - Logfile is 'test.blg'
[80] biber-MSWIN32:303> INFO - === 
[123] Biber.pm:359> INFO - Reading 'test.bcf'
[282] Biber.pm:835> INFO - Found 1 citekeys in bib section 0
[314] Biber.pm:3670> INFO - Processing section 0
[352] Biber.pm:3840> INFO - Looking for bibtex format file 'ref.bib' for section 0

在命令行上进行编译,biber test将在cmd上给出以下内容:

INFO - This is Biber 2.7
INFO - Logfile is 'test.blg'
INFO - Reading 'test.bcf'
INFO - Found 1 citekeys in bib section 0
INFO - Processing section 0
INFO - Looking for bibtex format file 'ref.bib' for section 0

biber --debug test将给予(祥东是我的用户名)

INFO - This is Biber 2.7
INFO - Logfile is 'test.blg'
INFO - DEBUG mode: all messages are logged to 'test.blg'
INFO - Reading 'test.bcf'
INFO - Found 1 citekeys in bib section 0
INFO - Processing section 0
INFO - Looking for bibtex format file 'ref.bib' for section 0
write_file 'C:\Users\祥东\AppData\Local\Temp\tlZld3jtIt\ref.bib_8456.utf8' - sysopen: No such file or directory at C:\Users\祥东\AppData\Local\Temp\par-cfe9b6ab\cache-2aa0b74e6d5e75f8e71a4b8c9501a9c7c24ddbf0\inc\lib/Biber/Input/file/bibtex.pm line 1428.

ref.bib_8456.utf8最后一行在不同的运行中可能会发生变化。

所有文件都存储在testbib我的桌面上名为的文件夹中。

平台:Windows 10 上的 TeX Live 2017、biblatex 3.7 和 biber 2.7。

答案1

随着暗示来自@Ulrike Fischer,我有一些解决方案:

改变用户环境变量名为TEMPTMP。它们的原始值应该是

%USERPROFILE%\AppData\Local\Temp

确实如此C:\Users\<username>\AppData\Local\Temp。然后修改为

%SystemRoot%\TEMP;%USERPROFILE%\AppData\Local\Temp

现在它是C:\WINDOWS\temp;C:\Users\<username>\AppData\Local\Temp

然后运行

biber --cache

生成缓存文件。这将需要一些时间,然后显示当前缓存位置。

(您可以biber <filename>正常运行。它会自动生成缓存文件)

现在biber可以正常运行。

biber更多信息可以在手册(v2.7)的第 4.2 节中找到。


环境变量

Control panel您可以在> System> Advanced system settings>中找到它Environment variables...用户环境变量 TEMP可以TMP在顶部面板找到。

笔记

我不确定这种方式是否可行,因为它改变了系统行为。

相关内容