我有一个基本的 tex 文件和一个从 Mendeley 导出的参考书目
但是,当我想以作者年份格式引用时,出现错误:
Package natbib Error: Bibliography not compatible with author-year citations. (natbib) Press <return> to continue in numerical citation style.
知道什么地方出了问题吗?
最小工作示例:
\documentclass[letterpaper, 10pt]{article}
\usepackage[authoryear]{natbib}
\usepackage{lipsum}
\begin{document}
\lipsum[1-4]
\nocite{*}
\bibliographystyle{apalike}
\bibliography{articles}
\end{document}
我的.bib 库的片段:
@article{shortcode,
author = {Lastname, Firstname},
file = {:/path/to/file.pdf:pdf},
journal = {Journal name},
number = {xx},
pages = {x--xx},
title = {Title},
volume = {xx},
year = {xxxx}
}
答案1
出现此错误的另一种情况是,您的某个 BibTeX 条目没有年份。
要找出它是哪个条目,请查看较早在输出中出现类似这样的消息Warning--empty year in ABC2019
。因此请检查ABC2019
。
答案2
当改变参考书目样式时,有时natbib
会感到不安,因为无法正确解释数据。
无论如何,将参数更改为\bibliographystyle
运行 LaTeX 和 BibTeX 后,需要重新同步。建议在运行这些文件之前删除.bbl
和.aux
文件,以避免出现可能损坏.aux
当前正在生成的文件的虚假错误消息。
答案3
spmpsci.bst
我在尝试与 结合使用时遇到了同样的错误natbib
。虽然natbib
的默认引用样式是作者年份,但spmpsci.bst
它是数字,所以这是一个奇怪的错误。我最终更改了以下内容:
\usepackage[square,sort,comma]{natbib}
到
\usepackage[square,sort,comma,numbers]{natbib}
问题解决了。
答案4
按着这些次序:
- 删除
.aux
和.bbl
文件 - 进行更改(在
\bibliographystyle
或 的任何选项中natbib
) - 运行 LaTeX
- 运行 BibTeX