我对 Latex 还不太熟悉,我想引用一篇论文。我有main.tex
一个bib/mybib.bib
文件。在 main.tex 中我写了
\cite{papername}
,在底部我有\bibliography{bib/mybib}
在 bib 文件中我有
@misc{papername,
doi = {...},
url = {...},
author = {...},
publisher = {...},
year = {...},
}
但是我得到:
“第 1 页上的引文‘papername’在输入行 101 上未定义。”您引用了参考书目中未包含的内容。请确保引文 ( \cite{...}
) 在您的参考书目中有对应的键,并且两者的拼写相同。
和
存在未定义的引用。您引用了尚未标记的内容。如果您已经标记,请确保里面写的内容\ref{...}
与里面写的内容相同\label{...}
。
我做错了什么?我需要添加一些包吗?
答案1
请发布一个最低限度的工作示例。例如,一个包含重现问题所需的最低限度必要软件包的 .tex 文件。
在 .tex 文件的前置部分,你可以使用以下代码手动编写参考书目
\begin{filecontents}{bibliography.bib}
@misc{papername,
doi = {...},
url = {...},
author = {...},
publisher = {...},
year = {...},
}
\end{filecontents}
现在,如果我使用标准的 overleaf 设置,我无法重现您的问题。例如:
\documentclass{article}
\usepackage{filecontents}
\usepackage[english]{babel}
\usepackage{natbib}
\begin{filecontents}{bibliography.bib}
@misc{papername,
doi = {...},
url = {...},
title = {A Treatise on Anonymity},
author = {John Doe},
publisher = {...},
year = {2042},
}
\end{filecontents}
\begin{document}
\citet{papername}
\bibliographystyle{apalike}
\bibliography{bibliography}
\end{document}
产生