Jestem nowy dla Ant. Czy ktoś może mi powiedzieć, jaką wartość umieścić w "classpathref" dla taskdef? Czy będzie to ścieżka do pliku klasy? Jeśli tak, można podać przykład, ponieważ próbowałem tego i nie działa dla mnie.Jaką klasyczną ścieżkę potrzebuję w Ant taskdef?
Odpowiedz
W Taskdef, classpathref
powinno być odniesieniem do wcześniej zdefiniowanego path
. Ścieżka powinna zawierać archiwum słoików, w którym znajduje się klasa realizująca zadanie, lub powinna wskazywać na katalog w systemie plików, który jest root hierarchii klasowej. To nie będzie rzeczywisty katalog, który przechowuje twoją klasę, jeśli twoja klasa znajduje się w pakiecie.
Oto przykład.
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");
}
}
Należy pamiętać, że nazwa pakietu jest com.x.y.z
, więc po wdrożeniu - powiedzmy klasy są wprowadzane na podstawie katalogu o nazwie classes
- możemy zobaczyć klasę tutaj w systemie plików :
$ ls classes/com/x/y/z
MyTask.class
Oto prosty build.xml, który używa zadanie:
<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>
Należy zauważyć, że classpathref
podanych punktów w katalogu classes
- root hierarchii klas.
Po uruchomieniu otrzymujemy:
$ ant
Buildfile: .../build.xml
[mytask] MyTask is running
Można to zrobić za pomocą podobny wyraźny classpath
, raczej niż 'classpathref', na przykład:
<property name="my.classes" value="${basedir}/classes" />
<taskdef name="mytask" classpath="${my.classes}" classname="com.x.y.z.MyTask"/>
- 1. taskdef ant zadania nie można znaleźć
- 2. bazowego katalogu problem w kodzie Ant
- 3. Jak profilować klasyczną stronę ASP?
- 4. Ant nie zbudował
- 5. Właściwości niezmiennej ant do zmiennego
- 6. Ant classpath Order
- 7. Czy powinienem ćwiczyć "mockistę" lub "klasyczną" TDD?
- 8. Pobierz klasyczną zmienną ASP z posta JSON
- 9. F #: Jak napisać klasyczną funkcję zamiany?
- 10. Jaką liczbę ocenia 8e3?
- 11. Jaką wersję Resharper mam?
- 12. Jaką wersję Androida obrać?
- 13. Jak udostępnić dane między niestandardowymi zadaniami Ant?
- 14. Ścieżki bezwzględne w pliku właściwości Ant
- 15. Co oznacza "**" w ANT?
- 16. Jak zrobić ulepszenie OpenJPA z Ant + IntelliJ IDEA
- 17. kompilacji kodu JavaFX korzystając ANT
- 18. Odwołanie lokalizacji skryptu ant z pliku ant
- 19. taskdef class com.android.ant.SetupTask nie można znaleźć przy użyciu modułu ładującego klasy AntClassLoader []
- 20. Scalaz: jaką rolę odgrywa filtr w | @ |?
- 21. Jaką walutę użyć w testach jednostkowych?
- 22. Jaką przewagę zapewnia przeciążanie obiektów w PHP?
- 23. Jak mogę przetworzyć wiele shem xsd za pomocą jaxb i zadania Ant xjc Ant?
- 24. Jaką jednostkę miary używa LayoutParams?
- 25. Jaką jednostkę miary używa Paint.setStrokeWidth()?
- 26. Potrzebuję array_keys_recursive()
- 27. Jaką jednostkę czasu zwraca timeit?
- 28. Czy Ant może wydrukować ścieżkę klas dla konkretnego celu? Jeśli tak to jak?
- 29. Jaką pracę wykonuje proces w kontenerze "gcr.io/google_containers/pause:0.8.0"?
- 30. przekonwertuj/zawiń "klasyczną" metodę asynchroniczną, która używa wywołania zwrotnego.