xmltask mylić o dtd
Próbuję użyć xmltask dla ant, aby zmodyfikować plik w podkatalogu:
project/path/to/file.xml
Plik odnosi się do DTD w następujący sposób:
<!DOCTYPE data SYSTEM "mydtd.dtd">
Nie mam możliwości zmiany tych dokumentów.
Ten DTD jest przechowywany w tym samym podkatalogu, który zawsze działał poprawnie:
project/path/to/mydtd.dtd
Niestety, xmltask próbuje zlokalizować dtd w katalogu najwyższego poziomu mojego projektu, w którym znajduje się mój plik kompilacji i skąd uruchamiam:
[xmltask] java.io.FileNotFoundException: /home/me/project/mydtd.dtd (system nie może znaleźć określonego pliku)
Widzę w dokumentacji xmltask, że mogę to poprawić za pomocąxmlcatalog element, aby powiedzieć, gdzie szukać pliku. Ale muszę użyćdtd element i mogę znaleźć tylko przykłady tego elementu, a nie dokumentacji; przykłady pokazują tylko identyfikator publiczny, a jeśli poprawnie rozumiem XML, dokument ten nie ma. W każdym razie nie powinienem tego określać, ponieważ mój dokument już mówi, że mój DTD jest przechowywany lokalnie i pokazuje, gdzie jest?
Dlaczego xmltask nie znajduje poprawnie DTD? Jak najlepiej naprawić lub obejść tę sytuację?