Tôi mới sử dụng Ant. Có thể ai đó vui lòng cho tôi biết giá trị để đặt cho 'classpathref' cho taskdef không? Nó sẽ là đường dẫn của tệp lớp? Nếu có, ví dụ có thể được đưa ra bởi vì tôi đã thử nó và nó không hoạt động cho tôi.Tôi cần loại đường dẫn nào cho nhiệm vụ Ant?
Trả lời
Trong taskdef, classpathref
phải là tham chiếu đến một số đã được xác định trước path
. Đường dẫn phải bao gồm một kho lưu trữ jar chứa lớp thực hiện nhiệm vụ, hoặc nó phải trỏ đến thư mục trong hệ thống tệp là gốc của hệ thống phân cấp lớp. Đây sẽ không phải là thư mục thực sự chứa lớp học của bạn nếu lớp học của bạn nằm trong một gói.
Đây là một ví dụ.
MyTask.java:
package com.x.y.z;
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Task;
public class MyTask extends Task
{
// The method executing the task
public void execute() throws BuildException {
System.out.println("MyTask is running");
}
}
Lưu ý rằng tên gói là com.x.y.z
, vì vậy khi triển khai - cho phép nói rằng các lớp học được đặt dưới một thư mục gọi classes
- chúng ta có thể thấy lớp ở đây trong hệ thống tập tin :
$ ls classes/com/x/y/z
MyTask.class
Dưới đây là một build.xml đơn giản mà sử dụng các nhiệm vụ:
<project name="MyProject" basedir=".">
<path id="my.classes">
<pathelement path="${basedir}/classes" />
</path>
<taskdef name="mytask" classpathref="my.classes" classname="com.x.y.z.MyTask"/>
<mytask />
</project>
Lưu ý rằng classpathref
các điểm đã cho tại thư mục classes
- gốc của phân cấp lớp.
Khi chạy, chúng tôi nhận được:
$ ant
Buildfile: .../build.xml
[mytask] MyTask is running
Bạn có thể làm tương tự như sử dụng một rõ ràng classpath
, chứ không phải là một 'classpathref', ví dụ:
<property name="my.classes" value="${basedir}/classes" />
<taskdef name="mytask" classpath="${my.classes}" classname="com.x.y.z.MyTask"/>
- 1. sbt Đường dẫn nhiệm vụ
- 2. Tài liệu dành cho nhiệm vụ "đường dẫn" trong Ant ở đâu?
- 3. Cần tây: mỗi giới hạn nhiệm vụ đồng thời (# công nhân cho mỗi nhiệm vụ)?
- 4. Ant: Tìm đường dẫn của tệp trong thư mục
- 5. Trong cần tây làm thế nào để có được trạng thái nhiệm vụ cho tất cả các nhiệm vụ cho tên nhiệm vụ cụ thể?
- 6. Cần đường dẫn cho các tệp cụ thể bằng os.walk()
- 7. Làm thế nào để thực hiện nhiệm vụ cần tây từ bên trong nhiệm vụ?
- 8. Chạy nhiệm vụ P2 Ant bên ngoài Eclipse
- 9. Tìm hiểu kiểu đường dẫn Ant
- 10. Làm cách nào để loại trừ tệp khỏi đường dẫn tham chiếu trong Ant?
- 11. Đường dẫn lớp, đường dẫn và đường dẫn được tài liệu trong Ant phiên bản 1.8.0 ở đâu?
- 12. nhiệm vụ định kỳ đường ray
- 13. Nhiệm vụ cần làm hồ sơ
- 14. Nhiệm vụ nền cần tây Heroku
- 15. phân lớp cần tây Nhiệm vụ
- 16. Hủy chuỗi nhiệm vụ cần thiết?
- 17. cần tây nhận nhiệm vụ đếm
- 18. Nhiệm vụ chuỗi cần thiết liên tiếp
- 19. Khi nào cần vứt bỏ System.Threading.Task với nhiệm vụ con?
- 20. làm thế nào để loại bỏ nhiệm vụ từ cần tây với redis môi giới?
- 21. Ant: Chuyển đổi tên lớp thành đường dẫn tệp
- 22. Chạy nhiệm vụ cần tây khi không thể nhập nhiệm vụ
- 23. Làm cách nào để thiết lập đường dẫn xây dựng Eclipse và đường dẫn lớp từ tệp xây dựng Ant?
- 24. cửa sổ ant build.xml không gian trắng trong đường dẫn
- 25. làm sạch nhiệm vụ cần tây với DB phụ trợ
- 26. Phát hiện khi nào một nhiệm vụ cần tây và tất cả các nhiệm vụ phụ đã hoàn thành
- 27. Thêm thư viện người dùng vào đường dẫn lớp Ant Builder
- 28. Đường dẫn tuyệt đối trong tệp thuộc tính Ant
- 29. Nhiệm vụ cần tây eta tắt, sử dụng rabbitmq
- 30. Làm cách nào để làm cho nhiều công nhân cần tây chạy cùng nhiệm vụ?