programing

다른 클래스의 메서드에 대한 Javadoc 링크

firstcheck 2022. 8. 8. 15:28
반응형

다른 클래스의 메서드에 대한 Javadoc 링크

현재 다음 Javadoc 구문을 사용하여 다른 클래스의 메서드를 참조하고 있습니다.

@see {@link com.my.package.Class#method()}

또, 이 메뉴얼로부터 이해한 바에 의하면, 이것이 올바른 방법입니다.하지만 지금 웃긴 부분, 혹은 좌절스러운 부분까지.이 javadoc을 생성하면 먼저 다음 오류가 발생합니다.

warning - Tag @see:illegal character: "123" in "{@link com.my.package.Class#method()}"
warning - Tag @see:illegal character: "64" in "{@link com.my.package.Class#method()}"
warning - Tag @see: reference not found: {@link com.my.package.Class#method()}

생성된 HTML 코드는 다음과 같습니다.

"," <code>com.my.package.Class#method()}</code> ","

그리고 물론 난 연관성이 없어.무슨 일이 일어나고 있는지, 그리고 이 문제를 해결할 힌트 좀 주실 수 있나요?

ASCII 테이블에 따르면 wold의 문자 123 및 64는 { 및 @를 나타냅니다.이 구문이 설명서에 따라 올바른 경우 이러한 문자는 왜 유효하지 않습니까?

Javadoc 태그의 경우@see, 를 사용할 필요가 없습니다.@link; Javadoc이 링크를 만듭니다.해라

@see com.my.package.Class#method()

에 대한 자세한 내용은 다음과 같습니다.@see.

이외에는@see, 다른 클래스를 참조하는 보다 일반적인 방법, 그리고 아마도 그 클래스의 방법은{@link somepackage.SomeClass#someMethod(paramTypes)}이 기능은 javadoc 설명 중간에 사용할 수 있다는 장점이 있습니다.

javadoc 매뉴얼(@link 태그 설명):

이 태그는 @see와 매우 유사합니다.이 태그는 package.class#member와 label 모두 동일한 참조를 필요로 하며 동일한 구문을 받아들입니다.주요 차이점은 {@link}이(가) 링크를 "See Also" 섹션에 배치하지 않고 인라인 링크를 생성한다는 것입니다.또한 {@link} 태그는 나머지 인라인 텍스트와 구분하기 위해 중괄호로 시작하고 끝납니다.

따라서 원래 문제의 해결책은 "@see"와 "{@link..." 둘 다 필요하지 않습니다.}" 참조는 같은 줄에 있습니다."@link" 태그는 자급자족하며 앞서 설명한 바와 같이 javadoc 블록의 아무 곳에나 배치할 수 있습니다.그 때문에, 다음의 2개의 어프로치를 혼재시킬 수 있습니다.

/**
 * some javadoc stuff
 * {@link com.my.package.Class#method()}
 * more stuff
 * @see com.my.package.AnotherClass
 */

언급URL : https://stackoverflow.com/questions/17496038/javadoc-link-to-method-in-other-class

반응형