apt warning: ไม่พบตัวประมวลผลคำอธิบายประกอบ

ตอนนี้ฉันแค่กำลังสอนตัวเองเกี่ยวกับบริการบนเว็บและพยายามใช้งาน helloWorld ฉันคิดว่าในการตั้งค่าบริการเว็บทั้งหมดที่ฉันต้องใช้ฉลาด

ฉันกำลังดำเนินการเช่นนี้:

apt HelloImpl.java -classpath /<path>/jsr181-api.jar

แต่ฉันได้รับคำเตือน (ดูด้านล่าง) ฉันจำเป็นต้องระบุตัวประมวลผลคำอธิบายประกอบด้วยหรือไม่ ฉันคิดว่าคำสั่ง apt ควรสร้างไฟล์หลายไฟล์ แต่นั่นไม่ได้เกิดขึ้น (เพิ่งสร้างไฟล์ .class) ขอบคุณสำหรับความช่วยเหลือ

คำเตือน:

warning: No annotation processors found but annotations present.
1 warning

รหัส:

package server;

import javax.jws.WebService;

@WebService
public class HelloImpl {

  /**
   * @param name
   * @return Say hello to the person.
   */
   public String sayHello(String name) {
     return "Hello, " + name + "!";
   }
}

คำถามพิเศษ: apt ทำอะไร? ฉันคิดว่ามันเรียกใช้ javac? มันควรจะเรียกใช้ตัวประมวลผลคำอธิบายประกอบด้วยหรือไม่

อัปเดต: บทช่วยสอน ที่ฉันติดตามบอกว่า : :

The next step is to run apt on the above Java code, resulting in several artifacts:

HelloServiceImpl.wsdl
schema1.xsd
classes/server/HelloImpl.class
classes/server/jaxrpc/SayHello.class
classes/server/jaxrpc/SayHelloResponse.class
classes/server/jaxrpc/SayHello.java
classes/server/jaxrpc/SayHelloResponse.java

ฉันคิดว่านี่คือสิ่งที่ควรทำ (สมมติว่าฉันผ่านข้อโต้แย้งที่ถูกต้อง) อย่างไรก็ตาม ฉันคิดว่าฉันต้องส่งผ่านตัวประมวลผลคำอธิบายประกอบ (?) ฉันแค่อยากใช้ค่าเริ่มต้น (ตัวประมวลผลคำอธิบายประกอบบริการเว็บ)

อัปเดต 2: บางทีฉันควรใช้ asant หรือ wsgen ฉันดูแล้วแต่ไม่มีสิ่งใดเลยในเครื่องของฉัน.. มีบางอย่างที่ต้องพิจารณา.. บางทีบทช่วยสอนที่ฉันใช้/กำลังใช้อาจผิด นี่คือลิงค์ไปยังการอ้างอิง asant: http://java.sun.com/webservices/docs/2.0/tutorial/doc/JAXWS3.html


person sixtyfootersdude    schedule 19.01.2010    source แหล่งที่มา


คำตอบ (1)


apt ไม่ใช่คอมไพเลอร์ โดยจะประมวลผลไฟล์ต้นฉบับและเรียกใช้ ตัวประมวลผลคำอธิบายประกอบ ตามความเหมาะสม

หากต้องการอ้างอิง เริ่มต้นใช้งาน...

apt ยูทิลิตีบรรทัดคำสั่ง ซึ่งเป็นเครื่องมือประมวลผลคำอธิบายประกอบ ค้นหาและดำเนินการประมวลผลคำอธิบายประกอบโดยอิงตามคำอธิบายประกอบที่มีอยู่ในชุดของไฟล์ต้นฉบับที่ระบุที่กำลังตรวจสอบ

คุณอาจรัน apt บนไฟล์ต้นฉบับเพื่อสร้างไฟล์ต้นฉบับหรือไฟล์ข้อมูลเมตาใหม่ในขณะสร้าง คุณสามารถเรียกใช้ apt ผ่าน javac .

คำอธิบายประกอบใน Java สามารถใช้งานได้หลายวัตถุประสงค์ ไม่จำเป็นต้องดำเนินการทั้งหมดในขณะสร้าง บางส่วนทำหน้าที่เป็นเครื่องหมายที่สามารถใช้ผ่านเครื่องมือวัดเพื่อแปลงคลาสในเวลาโหลด ส่วนใหญ่จะใช้เฉพาะกับเครื่องหมายรันไทม์ที่เครื่องมือวิปัสสนาสามารถใช้ได้ (เช่นคอนเทนเนอร์จำนวนมากและหัวฉีดอ้างอิง) วิธีที่คุณใช้คำอธิบายประกอบนั้นขึ้นอยู่กับ API ที่มาจากคำอธิบายประกอบ บทช่วยสอน JEE5 อธิบาย วิธีใช้คำอธิบายประกอบ WebService .

person McDowell    schedule 19.01.2010