如何将链接写入javadocs?
目前,我有类似的东西:
{@link java.lang.Math#sqrt(double) Math.sqrt}
Run Code Online (Sandbox Code Playgroud)
生成Math.sqrt应该链接到java.lang.Math.sqrt(double)API 的文本,但是,它所做的只是生成文本,没有链接.
(请注意,这个问题不是关于CAS,而是关于"可能是虚假失败的" Javadoc).
从上述两种方法之间的Javadoc唯一不同的AtomicInteger类就是weakCompareAndSet包含批注:"可能意外失败".
现在,除非我的眼睛受到某些咒语的欺骗,否则这两种方法看起来都是完全一样的:
public final boolean compareAndSet(int expect, int update) {
return unsafe.compareAndSwapInt(this, valueOffset, expect, update);
}
/* ...
* May fail spuriously.
*/
public final boolean weakCompareAndSet(int expect, int update) {
return unsafe.compareAndSwapInt(this, valueOffset, expect, update);
}
Run Code Online (Sandbox Code Playgroud)
所以我意识到"May"并不意味着"必须",但为什么我们都不开始将它添加到我们的代码库中:
public void doIt() {
a();
}
/**
* May fail spuriously
*/
public void weakDoIt() {
a();
}
Run Code Online (Sandbox Code Playgroud)
我真的很困惑那个看起来与compareAndSet()相同的weakCompareAndSet(),但是"可能会失败",而另一个则不能.
显然,"弱"和"伪故障"是相关的方式来"之前发生"的排序,但我还是通过这两个的AtomicInteger(和AtomicLong的等)方法很困惑:因为很明显他们称完全一样不安全.compareAndSwapInt方法.
我之所以特别迷茫AtomicIntegerJava 1.5中得到了介绍,所以Java内存模型变化后(所以它显然不是东西,可以"在1.4意外失败" …
我正在使用CheckStyle,FindBugs和PMD来验证我的Java代码.我已经修复了这些工具捕获的几乎所有错误.
我无法理解如何编写"包评论",这是checkstyle捕获的错误.我已经阅读了CheckStyle的文档,但我不明白.
有人可以帮助我在Java中编写包级别的注释吗?
我正在为一个包含2,509个类的模块构建一个Javadoc.这目前每秒需要7分钟或6个文件.
我试过了
mvn -T 1C install
Run Code Online (Sandbox Code Playgroud)
但是javadoc只使用1个CPU.有没有办法使用更多和/或加快?
我正在使用Oracle JDK 8更新112.我的开发机器有16个内核和128 GB内存.
运行飞行记录器我可以看到只有一个线程 main
对于那些感兴趣的人,我使用了以下选项:
<plugin>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<additionalJOptions>
<additionalJOption>-J-XX:+UnlockCommercialFeatures</additionalJOption>
<additionalJOption>-J-XX:+FlightRecorder</additionalJOption>
<additionalJOption>-J-XX:StartFlightRecording=name=test,filename=/tmp/myrecording-50.jfr,dumponexit=true</additionalJOption>
<additionalJOption>-J-XX:FlightRecorderOptions=loglevel=debug</additionalJOption>
</additionalJOptions>
</configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)
注意:一种解决方法是:
-Dmaven.javadoc.skip=true
Run Code Online (Sandbox Code Playgroud) 是否有理由将两者都包括在内@version并@since作为课程的一部分?
它们似乎是相互排斥的.
此外,这是什么%I%和%G% 意味着,以及如何设置/使用它们?
@version %I%, %G%
Run Code Online (Sandbox Code Playgroud)
谢谢
我目前正在与具有XML Schema工作<xsd:annotation>/ <xsd:documentation>对大多数类型和元素.当我从这个XML Schema生成Java Bean时,那些Beans的Javadoc只包含一些关于类型/元素的允许内容的通用生成信息.
我希望<xsd:documentation>在相关位置看到标记的内容(例如,对于ComplextType,该标记的内容应该显示在生成的类的Javadoc中以表示该complexType).
有没有办法实现这个目标?
编辑:此XML Schema将在带有JAX-WS的WSDL中使用,因此该标记也可能是合适的.
编辑2:我读过<jxb:javadoc>.根据我的理解,我可以在单独的JAXB绑定文件中或直接在XML Schema中指定.这几乎可以解决我的问题.但我宁愿使用现有的<xsd:documentation>标签,因为Javadoc不是文档的主要目标(主要是关于数据结构的信息,而不是关于从它生成的Java Bean),并允许非JAXB工具访问信息.好.提供两者的文档<jxb:javadoc>并xsd:documentation>"感觉"错误,因为我没有充分理由重复数据(和工作).
编辑3:多亏了帕斯卡的答案,我意识到,我已经有半个解决方案:<xsd:documentation>的complexTypes的写入它的Javadoc的开始!问题仍然是只有该complexTypeS用于和simpleTypeS(这也可导致在一个类)和元素仍然Javadoc的更小.
是否可以设置Intellij自动生成方法和类的javadoc,使用@author和@since date?
我在Eclipse中有这个功能.
我知道,文件有模板,我也可以手动半自动地将javadoc添加到选定的方法/类.但我希望生成对于每个生成的方法/类/枚举/接口/字段等是自动的.
这对于例如"提取方法","覆盖/实现","创建getter/setter"等有用.
这将节省数百手动操作
我正在使用IntelliJ Idea 9.0 BETA社区版,#IC-90.96.
TIA.
我知道你可以按shift + alt + j为当前代码块插入一个合适的注释模板,但有没有办法让eclipse变得疯狂并做一个像这样的整个项目?
根据最佳实践,哪个更合适的HTML标记用于分解javadoc的段落/长节?
难道<p /> 还是<br />?为什么?
我想使用{@inheritDoc}该类从我的抽象类继承方法.在抽象类的文档中,我按名称引用了抽象类.我如何标记这个,所以当子类从超类继承文档时,它用子类的名称替换抽象类的名称?
javadoc ×10
java ×8
comments ×2
concurrency ×1
eclipse ×1
hyperlink ×1
inheritdoc ×1
jax-ws ×1
jaxb ×1
xjc ×1