2009-08-06 6 views
3

ich alles versuche ich kann phpDocumentor zu bekommen, mir zu erlauben, die DocBook Tutorial-Format zu verwenden, um die Dokumentation zu ergänzen, es schafft:wie phpdoc Tutorial/Erweiterte-Seiten erstellen Code zu ergänzen, kommentierte

  1. ich verwende eclipse-
  2. habe ich phpDocumentor über PEAR auf einem OSX Maschine
  3. installiert ich betreibe und auto können Code aus meiner pHP-Klassen generieren
  4. Es wird nicht Tutorials Format - ich kann keine Lösung
  5. finden

Ich habe versucht, die .pkg Beispieldatei über die Dateistruktur in Unterordnern zu verschieben, die einen ähnlichen Namen wie das Paket verwendet, auf das im Code verwiesen wird. Ich bin wirklich ratlos - wenn jemand WHERE erklären könnte sie legen die .pkg und andere DocBook-Dateien in Bezug auf den Code, den sie dokumentieren und wie sie phpdoc auslösen es zu formatieren, ich würde es zu schätzen wissen, ich das im Moment bin mit:

phpdoc -o HTML:Smarty:HandS 
-d "/path/to/code/classes/", "/path/to/code/docs/tutorials/" 
-t /path/to/output 

Antwort

3

Ich habe nicht erwartet, meine eigene Frage zu beantworten, aber nach 2 Tagen Geist Biegen Schmerzen und ein Wochenende zu experimentieren es scheint, das ist das Problem:

Das Tutorial und meine Beispiele sollten funktionieren, aber scheint es einen kleinen Fehler in der Art zu geben, wie phpdoc die Switch-Werte interpretiert. Hier ist, was ich habe mit:

phpdoc -o HTML:Smarty:HandS 
-d "/path/to/code/classes/", "/path/to/code/docs/tutorials/" 
-t /path/to/output 

Allerdings, wenn Sie die folgende verwenden:

phpdoc -o HTML:Smarty:HandS 
-d /path/to/code/classes/, /path/to/code/docs/tutorials/ 
-t /path/to/output 

Es wird richtig Ihre Tutorials und sich Docs-Format, alles, was ich tat, war die doppelten Anführungszeichen fallen Umgeben der Verzeichnispfade. Einfache Anführungszeichen funktionieren überhaupt nicht - da phpdoc selbst die Verzeichnisse in doppelten Anführungszeichen umschließt, wenn keine Leerzeichen vorhanden sind ... scheint dies ein Fehler mit phpdoc zu sein, und das gleiche Verhalten ist bei der webbasierten Schnittstelle aufgetreten, also ein interner Problem. Mein ursprünglicher Versuch hätte funktionieren sollen, aber ich werde die Entwickler nicht kontaktieren und auf sie aufmerksam machen.

Problem gelöst.

1

Haben Sie this lesen ?

Es schlägt das folgende Pfadschema vor: tutorials/package.pkg wo Paket ist der Name Ihres Pakets, haben Sie es so gemacht?

+0

Ja, ich habe diese Seite in der Dokumentation oft gelesen. Es empfiehlt Tutorials/Paket/Paket.pkg - und ich habe dieses Schema in etwa 4-5 Standorten ausprobiert - keine davon machte keinen Unterschied. Ich habe auch versucht, nur den individuellen Namen des Pakets zu verwenden, da ich das nicht zum Laufen bekommen konnte. Anfangs hatte ich es einrichten als: /path/to/docs/tutorials/package/package.pkg dann: /path/to/code/tutorials/package/package.pkg dann: /path/to/tutorials/package/package.pkg dann: /path/to/docs/tutorials/package.pkg ich glaube, es auch 2-3 weitere diff Versuche gewesen sein. –

+0

Nun, das ist seltsam. Hast du die Berechtigungen der Datei überprüft? –

+0

Wissen Sie, welche Berechtigungen die Datei sein sollte - ich habe es nicht überprüft und würde mir vorstellen, dass es nur vom Benutzer lesbar sein muss - ich könnte versuchen, den Befehl als root auszuführen, werde ich überprüfen. –

0

Ja, Ihre Verwendung der doppelten Anführungszeichen warf wahrscheinlich das interne Laufzeitargument phpDocumentor ab, was dazu führte, dass -d /path/to/code/classes ein Arg/Wert-Paar war, ohne /path/to/code/docs/tutorials als zusätzlichen Verzeichniswert einzubeziehen.

In der Regel habe ich zwei andere Probleme bei der Erstellung von Lernprogrammen gesehen. Erstens, das tutorial-Verzeichnis ist nicht das, was phpDocumentor erwartet. Zwei, keine tatsächlichen PHP-Code-Dateien sind in der Ausführung enthalten. Ich erinnere mich daran, dem Handbuch speziell Worte hinzuzufügen for these two scenarios.

0

Ich hatte das gleiche Problem mit einer .ini für die Konfiguration, aber bei mir war das Problem, dass ich ein Leerzeichen zwischen dem Komma und dem Verzeichnis, was dazu führte, dass das Verzeichnis nicht mit dem -d "verlinkt" Parameter.

Problem:

directory = {$lib}/Question,{$lib}/Error, {$path}/docs/tutorials 

Arbeits:

directory = {$lib}/Question,{$lib}/Error,{$path}/docs/tutorials 

Hope this sonst das Problem für jemand löst!

Verwandte Themen