php.de

Zurück   php.de > php.de Intern > Off-Topic Diskussionen

Off-Topic Diskussionen Mach mal Pause vom Programmieren!

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 05.02.2010, 23:54  
Benutzer
 
Benutzerbild von ALEC23
 
Registriert seit: 25.08.2009
Beiträge: 80
PHP-Kenntnisse:
Anfänger
ALEC23 befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Zend Framework in Netbeans integrieren

Guten Abend,

da ich die Netbeans IDE mit Subversion noch nicht so lange verwende, muss ich mal nach Eurer Herangehensweise fragen. Ich mache gerade meine ersten Schritte mit dem Zend-Framework. Während des Entwickelns möchte ich das Zend-Framework, oder andere libraries, nicht in den Projektordner integrieren, so das es beim Einreichen nicht in der Repo landet und vor allem, das es lokal nur einmal gespeichert ist.

dev:
PHP-Code:
$path 'C:\ZendFramework-1.7.4\library\Zend'// Beispielsweise
ini_set('include_path'PATH_SEPARATOR $path); 
prod:
PHP-Code:
$paths = array(
    
APPLICATION_PATH '/library'
    
APPLICATION_PATH '/application/models',
    
'.'
);
ini_set('include_path'implode(PATH_SEPARATOR$paths)); 
Ist das die richtige Herangehensweise oder kann ich das noch besser/anders lösen (Netbeans hat ja noch die Option projektbezogen im Kontextmenu einen includePath oder auch in den IDE-Optionen einen globalen IncludePath zu definieren)?

LG Alec

Hab's mal im Off-Topic - ich weiss, das es nicht unbedingt das richtige Forum ist (Software-Support und so), aber ich denke, das dies zum Workflow gehört und Ihr mir das (hoffentlich) verzeiht
ALEC23 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 06.02.2010, 01:43  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

Also mir wäre das zu umständlich im Code die Pfade manuell drin zu haben und im Code eventuell was ändern zu müssen, egal ob neue version, Pfad ändert sich (Übertragen aufs Test/Produktiv-System) oder was auch immer.

Mein Weg ist folgender (unter Linux):

Ich habe einen Ordner wo alle Libraries in allen verwendeten Versionen (Zend Framework, Doctrine, HtmlPurifier ... ) drin sind und dann im Projekt passende ant-basierte Build-scripte die mir abhängig von der in der Properties-Datei angegeben Version dann automatisch ins library-Verzeichnis symlinkt.

Code:
<?xml version="1.0" encoding="UTF-8"?>
<project name="Foo" basedir=".">

    <property name="env.local.libPath"                  value="/www/libs/" />
    <property name="env.local.libVersion.Zend"          value="1.10.0" />
    <property name="env.local.libVersion.ZendX"         value="1.10.0" />
    <property name="env.local.libVersion.Doctrine"      value="1.2.1" />
    <property name="env.local.libVersion.HTMLPurifier"  value="4.0.0" />
    <property name="env.local.libVersion.ezComponents"  value="2009.1.2" />
    
    <target name="symlinkLibrary">
        <symlink link="library/Zend"                resource="${env.local.libPath}zendframework/${env.local.libVersion.Zend}/library/Zend" overwrite="true" />
        <symlink link="library/ZendX"               resource="${env.local.libPath}zendframework/${env.local.libVersion.Zend}/library/ZendX" overwrite="true" />
        <symlink link="library/Doctrine.php"        resource="${env.local.libPath}doctrine/${env.local.libVersion.Doctrine}/lib/Doctrine.php" overwrite="true" />
        <symlink link="library/Doctrine"            resource="${env.local.libPath}doctrine/${env.local.libVersion.Doctrine}/lib/Doctrine" overwrite="true" />
        <symlink link="library/ezc"                 resource="${env.local.libPath}ezComponents/${env.local.libVersion.ezComponents}/" overwrite="true" />
        <symlink link="library/HTMLPurifier.php"    resource="${env.local.libPath}htmlpurifier/${env.local.libVersion.HTMLPurifier}/library/HTMLPurifier.php" overwrite="true" />
        <symlink link="library/HTMLPurifier"        resource="${env.local.libPath}htmlpurifier/${env.local.libVersion.HTMLPurifier}/library/HTMLPurifier" overwrite="true" />
    </target>
</project>
Die properties kann man auch auslagern in eine properties-datei die geladen wird und im produktiv-system hat die dann nen anderen pfad fürs lib-dir und wird halt beim deployment nicht überschrieben oder wenn das deployment auf ein system geht wo man eh keinen ssh/shell-zugang hat, wird lokal dann alles in einem build-verzeichnis zusammenkopiert und dann via ftp oder ähnlichem übertragen.

Code:
<property file="env.properties" />
Netbeans 6.7+ erkennt die Symlinks ganz normal als Ordner an, man kann darin rumbrowsen, Code-Completion funktioniert und soweiter.

ANT integriert sich auch schön in Netbeans (Falls man die komplett-Version von Netbeans hat oder das ANT-Plugin via Plugin-Manager nachinstalliert hat), dass man dort direkt nur die Properties-Datei verändern kann und direkt den Symlink-Task via rechtsklick auf die build.xml oder den Task aufrufen kann.

So kann ich schnell und einfach zwischen verschiedenen Versionen wechseln, hab keinen overhead durch Kopien und APC erkennt sogar via symlink referenzierte Dateien und speichert sie dann nicht doppelt in seinem Cache.
[Und kann das ganze auch recht einfach automatisieren wenn ich ein projekt mit verschiedenen versionen einer Lib testen lassen will]

Das Lib-Verzeichnis synchronisiere ich via VCS zwischen meinem Server und meiner Entwicklungsumgebung und kann dann über ant direkt immer die version der verwendeten Libs wechseln und bin nicht auf Kopien angewiesen.

Unter Windows wirst du das mit ANT nicht so direkt machen können, aber du kannst ja mal abhängig von deinem verwendeten Windows dir das hier anschauen: Symbolische Verknüpfung – Wikipedia
da steht beschrieben welche Versionen von Windows in welcher Form Symlinks unterstützen und wie man damit welche anlegt, dann kann man sich entweder eine .bat-Datei basteln oder einen exec-Task bei ANT
verwenden.

Und ANT kann man dann auch noch für tests, deployment und solche Sachen verwenden, ich hab mir z.b. für manche Projekte tasks angelegt die mir datenbank-dumps vom produktiv-system holen und lokal einspielen, backups erstellen, den aktuellen code aufs produktiv-system übertragen und soweiter.

Andere Beispiele wofür man ant nutzen kann:
z.b. lint-check für php, ob keine parse-error in irgndwelchen Dateien sind (z.b. nach nem großen Refactoring/ner großen bösen suchen/ersetzen-Orgie oder bevor die unittests laufen)
PHP Syntax-Check Lint Ant Task - Codeschnipsel

Entfernen von leerzeichen und tabs hinter dem ende der Zeile (linux/unix only):
Remove Trailing Spaces sed-basierter Ant Task - Codeschnipsel
Oder man kann auch tools wie PHP_CodeSniffer und ähnliches integrieren für Quellcode-Analyse, Metriken und soweiter.

Zitat:
beim Einreichen nicht in der Repo landet
Das ist wohl eher eine Sache der richtigen Konfiguration deines VCS, dass es gewisse Dateien und Ordner einfach in in Ruhe lässt:

Subversion: Properties
git: gitignore(5)
bazaar: Bazaar-NG Tutorial
mercurial: hgignore(5): syntax for Mercurial ignore files - Linux man page

Von der Sache mit dem globalen und lokalen Include-Pfad würde ich abraten, das ist wie ich finde extrem unflexibel, weil du dann projekt-übergreifend/projekt-bezogen immer alle Libs drin hast und auf eine Version festgelegt bist. Global änderst du was und zack, gilt es für alle Projekte obwohl sie vielleicht auf eine ältere oder neuer Versionen aufbauen.

Ausserdem bringen dich die Include-Pfade von Netbeans in keiner Weise weiter was PHP angeht, weil das nur für Netbeans intern ne Info ist wo er nach Code sucht den er für die Code-Completion und so nutzt, sprich nur weil man etwas in den Include-Pfad des Projektes setzt, ist es dann noch nicht im Include-Pfad von PHP und das sollte am besten automatisch synchronisiert sein.
Sonst passiert es einem schnell, dass man in der Code-Completion eine andere Version verwendet, als man in Wirklichkeit im Code eingebunden hat. Wenn möglich sollte man das verbinden, dass diese Zuständigkeit ausserhalb von Netbeans liegt und automatisiert ist.
robo47 ist offline   Mit Zitat antworten
Alt 06.02.2010, 08:40  
Benutzer
 
Benutzerbild von ALEC23
 
Registriert seit: 25.08.2009
Beiträge: 80
PHP-Kenntnisse:
Anfänger
ALEC23 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von robo47 Beitrag anzeigen
Ausserdem bringen dich die Include-Pfade von Netbeans in keiner Weise weiter was PHP angeht, weil das nur für Netbeans intern ne Info ist wo er nach Code sucht den er für die Code-Completion und so nutzt, sprich nur weil man etwas in den Include-Pfad des Projektes setzt, ist es dann noch nicht im Include-Pfad von PHP und das sollte am besten automatisch synchronisiert sein.
Sonst passiert es einem schnell, dass man in der Code-Completion eine andere Version verwendet, als man in Wirklichkeit im Code eingebunden hat. Wenn möglich sollte man das verbinden, dass diese Zuständigkeit ausserhalb von Netbeans liegt und automatisiert ist.
Das habe ich mir schon gedacht und vielen Dank für diese Info. Ich habe mir Ant jetzt heruntergeladen, die Umgebungsvariable gesetzt und unter ant -help spuckt er mir die Infos aus. Das funktioniert. Das Ant-Plugin habe ich ebenfalls installiert und unter Team ist das "Buildjob erzeugen" hinzugekommen. Da hat sich also auch schon was getan. Ich werde jetzt mal noch ein wenig recherchieren und die o.g. Links genauer unter die Lupe nehmen.

Ich bedanke mich. Werde jetzt mal versuchen, das zum Laufen zu bringen.

EDIT:

Netbeans->Extras->Optionen->Ant->ClassPath - was muss hier stehen? Habe gelesen, das dort gemachte Änderungen global sind und somit wieder für alle Projekte gelten.

In den project.properties innerhalb der nb.projects ist auch ein Standard include.path=${php.global.include.path} definiert - Das ist doch bereits der oben erwähnte Pfad, der uns eigentlich nicht interessiert?

Zum Verständnis nochmal:
Es muss zu jedem Projekt genau eine build.xml vorliegen, welche Ant steuert. Ant ist später dafür zuständig, das über Buildjob erzeugen alle Daten zusammengefügt werden und diese komplett hochgeladen werden können? Ich weiss jetzt aber leider nicht, wie die Schnittstelle aussehen muss. Zum einen wäre dann ja eine Pfadangabe beim Buildjob nötig, das ich vor dem Hochladen alle verwendete Daten hole -> in diesem Fall die Zend lib und dann noch die Möglichkeit beim Entwickeln und Testen auf die Lib zuzugreifen. Ersteres mache ich ja wohl mit der build.xml. Die besagten Symlinks sind ja "Windows-intern", diese sind dann wohl zuständig für das Verfügbarkeit in Netbeans, oder hab ich da was falsch verstanden?
Habe bisher immer meine Seiten mit Dreamweaver hochgeladen und habe deswegen auch noch keine Erfahrung mit buildjobs und dem kompletten Entwickeln einer Anwendung it Netbeans.

thx, alec.

Geändert von ALEC23 (06.02.2010 um 09:55 Uhr). Grund: Neues Terrain und die Frage nach dem "Wie"
ALEC23 ist offline   Mit Zitat antworten
Alt 06.02.2010, 10:39  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

Zitat:
Netbeans->Extras->Optionen->Ant->ClassPath - was muss hier stehen? Habe gelesen, das dort gemachte Änderungen global sind und somit wieder für alle Projekte gelten.
Damit kannst du ANT weitere Module hinzufügen.
Out-of-the-box hat ANT z.b. Unterstütztung für ssh, aber die passende Lib die das regelt fehlt, hier kann man weitere JAR's angeben oder Verzeichnisse wo diese JAR's liegen, braucht dich also erstmal nicht zu interessieren und es ist meiner Meinung sinnvoller die dann einfach im Standard-ANT-Verzeichnis unterzubringen, dann findet ANT die auch wenn du es nicht über Netbeans startest.

Zitat:
In den project.properties innerhalb der nb.projects ist auch ein Standard include.path=${php.global.include.path} definiert - Das ist doch bereits der oben erwähnte Pfad, der uns eigentlich nicht interessiert?
Ja.

Zitat:
Zum Verständnis nochmal:
Es muss zu jedem Projekt genau eine build.xml vorliegen, welche Ant steuert.
Also ANT kann mit jeder beliebigen XML-datei arbeiten, wenn man sie ihr übergibt (-propertyfile ) sprich du bist theorhetisch bei ANT weder auf eine XML-Datei limitiert noch darauf dass sie build.xml heißt, das ist nur der standard danach sucht ant im aktuellen verzeichnis selbst.

Wie viele build.xml auf wie viele Ordner verteilt du hast ist deine Sache
Du kannst deine Tasks warum auch immer über mehrere verteilt haben, ich hab üblicherweise alle Tasks in einer build.xml die im root-verzeichnis des projektes liegt, weil ich sehr oft ant auch auf der Konsole nutze, nicht nur via Netbeans.

Zitat:
Ant ist später dafür zuständig, das über Buildjob erzeugen alle Daten zusammengefügt werden und diese komplett hochgeladen werden können?
Diesen Menüpunkt hab ich noch nie genutzt oder mir angeschaut.
Scheint wohl eher dazu zu sein nen Buildjob für nen CI-Server wie Hudson zu erstellen um ein Continuous-Integration-Server zu nutzen.

ANT macht das nicht alles automatisch irgendwie, du musst dir schon einen passenden Task erstellen der das für dich übernimmt.

Siehe Overview of Ant Tasks
z.b.
Mkdir Task zum Verzeichnis erstellen
Copy Task zum Dateien reinkopieren was du übertragen willst
FTP Task Um die Dateien via FTP zu übertragen

Damit musst du dir dann in der build.xml deinen Task zusammenbasteln.

Zitat:
Ich weiss jetzt aber leider nicht, wie die Schnittstelle aussehen muss. Zum einen wäre dann ja eine Pfadangabe beim Buildjob nötig, das ich vor dem Hochladen alle verwendete Daten hole -> in diesem Fall die Zend lib und dann noch die Möglichkeit beim Entwickeln und Testen auf die Lib zuzugreifen. Ersteres mache ich ja wohl mit der build.xml. Die besagten Symlinks sind ja "Windows-intern", diese sind dann wohl zuständig für das Verfügbarkeit in Netbeans, oder hab ich da was falsch verstanden?
Die Symlinks sind zuständig dafür dass PHP die Dateien im Standard-lib-dir findet und sie auch in Netbeans auftauchen, hat also mit ANT und co erstmal nichts zu tun.
Wenn du einen Task fürs Deployment schreibst hast du ja irgendwo ein property das dir den Pfad zu dem Verzeichnis nennt wo dein ZF liegt.
Entweder dein deployment sieht so aus, dass du in einem verzeichnis (z.b. deployment" alles zusammenkopierst was du brauchst (code deiner applikation, bibliotheken, configs) und das dann in einem überträgst oder du hast mehrere ftp-tasks in deinem deployment task die z.b. erst deine Libs, dann deine App und soweiter hochlädt.

Abhängig davon wohin du deployst (Anderer Rechner via gemoutetem Netzlaufwerk, via FTP, via SCP/SSH) und wie die Gegenseite aussieht, kann der ganze ablauf ganz anders sein.

Wenn ich via scp/ssh was deploye erstelle ich lokal ein Verzeichnis wo alles drin ist was ich brauche, dann wird zuerst eine "Seite ist momentan nicht erreichbar"-Seite (mit 503 Service Temporarily Unavailable-Header und soweiter) ins htdocs-Verzeichnis hochgeladen um den momentan Betrieb zu unterbrechen und auch SUMAs und Co passend zu befriedigen (lässt sich auch via .htaccess oder ähnlichem erreichen.
Lokal erstelle ich ein fertiges tar.gz/zip-Archiv mit allem was ich online brauche und in der passenden Struktur, das lade ich dann hoch und entpacke es in ein verzeichnis, sobald das hochladen + entpacken fertig ist, verschiebe ich den Kram an die Richtige stelle oder symlinke ihn passend, sonst hat man, gerade wenn es mehr Code ist, ein Zeit lang eventuell eine fehlerhafte Seite.
robo47 ist offline   Mit Zitat antworten
Alt 06.02.2010, 19:10  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Wow, was für komplexe Antworten, Robo, und ich kann nicht mal bewerten gerade.

Unter Windows müsste dem Problem theoretisch mit Junctions beizukommen sein. Was ich zur Zeit mache (ähnliche Baustelle) ist, Projekte auf eine eigenes virtuelles Laufwerk zu mappen (subst), sicher könnte man dort dann zusätzliche Libraries mit Junctions auf diesem Laufwerk in Ordner abbilden.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 07.02.2010, 12:58  
Benutzer
 
Benutzerbild von ALEC23
 
Registriert seit: 25.08.2009
Beiträge: 80
PHP-Kenntnisse:
Anfänger
ALEC23 befindet sich auf einem aufstrebenden Ast
Standard

Tach Ihr beiden,

wieder ein paar Stunden später und wieder einen Schritt weiter. Zunächst habe ich mich mal um das Einbinden der Libraries in Netbeans gekümmert.

Ich habe mir meinen Bibliothekenordner auf dem Laufwerk E erstellt und zunächst mal die Zendbibliothek reingepackt: E:\Library\Zend

Danach habe ich die Eingabeaufforderung als Administrator aufgerufen und eine symbolische Verknüpfung angelegt:
Code:
mklink /d "E:\Projekt\Library" "E:\Library"
Ausgabe: Symbolische Verknüpfung erstellt für ... Ein Blick in den Projektordner beweist die symbolische Verknüpfung ist angelegt und auch nach einem Neustart verfügbar. Ich öffne das Projekt mit Netbeans und sehe, das auch dort die Dateien verfügbar sind. Das oben genannte Problem mit dem Ausschließen der Subversion habe ich ganz einfach gelöst mit einem Rechtsklick auf den Library-Ordner und dem Anwählen von ignorieren. Die Daten werden jetzt ausgegraut dargestellt und sind ganz normal ansprechbar. Alles wunderbar. Bleibt noch zu sagen, das die symbolischen Verknüpfungen wieder mit erase "E:\Verknüpfung" zu löschen sind - wenn man sie falsch plaziert hat zum Beispiel.

Zu Ant:

Ich habe mir, wie beschrieben, Ant als .zip - Archiv runtergeladen, auf C:/ entpackt und in "ant" umbenannt. Die Umgebungsvariable path bearbeitet und ;C:\ant\bin hinzugefügt. Das Testen mit ant --version und ant -help war ebenfalls erfolgreich. Jetzt habe ich testweise das erste Buildfile erstellt:

Code:
<project name="roboTest" basedir=".">
	
	<!-- Property Definitionen -->
	<property file="build.properties"/>
	
	<!-- Target Definitionen -->
	<target name="target1" description="Die Targets bestehen aus einer Abfolge mit Optionen und Argumenten"/>
		
</project>
Mit der Eingabeeinforderung wechsele ich in das Verzeichnis und führe Ant aus. Die Ausgabe sagt mir Build successful. Soweit so gut. Um ein ganz bestimmtes Buildfile zu nutzen muss ich -buildfile und den Pfad eingeben, wo das Buildfile liegt.

Mit ant -projecthelp teste ich:

Main targets:
Traget1 Die Targets bestehen….


Läuft also…

Mit ant target1 teste ich:

Target1:

Ausgabe ist natürlich noch leer, weil ich ja nur die Beschreibung vergeben habe.
Jetzt habe ich mal versucht, wie oben gesagt, die Property Definitionen auszulagern. Ich habe im selben Verzeichnis die Datei build.properties angelegt mit folgendem Inhalt (testweise):

Code:
<?xml version="1.0" encoding="iso-8859-1"?>

<project name="roboTest" basedir=".">
	
	<!-- Property Definitionen -->
	<property name="env.local.libPath" value="E:\libs\" />

	
	<!-- Target Definitionen -->
	<target name="symlinkLibrary">
        <symlink link="library/Zend" resource="${env.local.libPath}" />
    </target>

</project>
Diesen Punkt mache ich wohl noch falsch, denn wenn ich versuche über propertyfile build.properties gibt er mir ein ... does not exist aus. Pfade etc. war mir jetzt erstmal egal, wollte mal sehen, was er überhaupt ausspuckt und ob er den propertyfile findet.

Was will/kann ich mit Ant erreichen? Der Vorteil jetzt mit Ant ist, das ich über Targets verschiedene Tasks erstellen kann, zum einen ziehe ich mir alle benötigten und betreffenden Daten in einen Ordner und übertrage sie dann durch einen neuen FTP Task. Ich hoffe, das ich das soweit richtig verstanden habe.
Ich werde jetzt mal ein buildfile erstellen, in dem die properties direkt definiert sind und schau erstmal, ob ich das Projekt komplett mit zend in einen Ordner bekomme.

Tausend dank schonmal.
ALEC23 ist offline   Mit Zitat antworten
Alt 07.02.2010, 13:47  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

Eine properties-file ist ein von java genutztes ini-ähnliches format und KEINE build.xml-ähnliche datei! Es dient nur dazu Konfigurationen auszulagern, nicht Tasks oder ähnliches.

Java-Properties-Datei – Wikipedia

um mal mein beispiel von oben aufzugreifen sehe die oben genannte build.xml wenn ich die properties ausgliedere so aus :

build.xml:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<project name="Foo" basedir=".">

    <property file="env.properties" />

    <target name="symlinkLibrary">
        <symlink link="library/Zend"                resource="${env.local.libPath}zendframework/${env.local.libVersion.Zend}/library/Zend" overwrite="true" />
        <symlink link="library/ZendX"               resource="${env.local.libPath}zendframework/${env.local.libVersion.Zend}/library/ZendX" overwrite="true" />
        <symlink link="library/Doctrine.php"        resource="${env.local.libPath}doctrine/${env.local.libVersion.Doctrine}/lib/Doctrine.php" overwrite="true" />
        <symlink link="library/Doctrine"            resource="${env.local.libPath}doctrine/${env.local.libVersion.Doctrine}/lib/Doctrine" overwrite="true" />
        <symlink link="library/ezc"                 resource="${env.local.libPath}ezComponents/${env.local.libVersion.ezComponents}/" overwrite="true" />
        <symlink link="library/HTMLPurifier.php"    resource="${env.local.libPath}htmlpurifier/${env.local.libVersion.HTMLPurifier}/library/HTMLPurifier.php" overwrite="true" />
        <symlink link="library/HTMLPurifier"        resource="${env.local.libPath}htmlpurifier/${env.local.libVersion.HTMLPurifier}/library/HTMLPurifier" overwrite="true" />
    </target>
</project>
env.properties
Code:
env.local.libPath=/www/libs/
env.local.libVersion.Zend=1.10.0
env.local.libVersion.ZendX=1.10.0
env.local.libVersion.Doctrine=1.2.1
env.local.libVersion.HTMLPurifier=4.0.0
env.local.libVersion.ezComponents=2009.1.2
robo47 ist offline   Mit Zitat antworten
Alt 07.02.2010, 13:59  
Benutzer
 
Benutzerbild von ALEC23
 
Registriert seit: 25.08.2009
Beiträge: 80
PHP-Kenntnisse:
Anfänger
ALEC23 befindet sich auf einem aufstrebenden Ast
Standard

Ok, das habe ich verstanden. Hat auch schonmal geklappt mit dem Ordner erstellen und mit ant vorbereiten das aufzurufen:
Code:
<?xml version="1.0" encoding="iso-8859-1"?>

<project name="roboTest" basedir=".">
	
	<target name="vorbereiten">
		<mkdir dir="../build"/>
	</target>

</project>
Er zeigt mir aber immer die Fehlermeldung unable to locate tools.jar. das hat doch für mich eigentlich keine Relevanz, oder ? Ich brauch' das doch nur, wenn ich eine Java-Anwendung kompliliere. (Sorry, kenne mich mit java nicht aus).

Werde mich jetzt mal mit dem copy todir und dem fileset auseinandersetzen und mich Deinem Code nähern. Wenn ich das alles verstanden habe, versuche ich die properties, die dann ja funktionieren sollten auszulagern. Ich hatte die Properties im Übrigen mit der Dateiendung .properties geschrieben und dennoch wurde sie nicht gefunden. Aber ich werde den Link auch mal durchlesen.
ALEC23 ist offline   Mit Zitat antworten
Alt 07.02.2010, 15:45  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

Zitat:
unable to locate tools.jar
Google das mal, da gibt es zig infos zu, wohl oftmals ein problem wenn man JRE und JDK installiert hat und das falsche im Pfad hat.
Ob das relevant ist weis ich nicht, da ich nicht weis für welche Tasks die eventuell genutzt wird.
robo47 ist offline   Mit Zitat antworten
Alt 07.02.2010, 18:07  
Benutzer
 
Benutzerbild von ALEC23
 
Registriert seit: 25.08.2009
Beiträge: 80
PHP-Kenntnisse:
Anfänger
ALEC23 befindet sich auf einem aufstrebenden Ast
Standard

Da isser wieder... Hat geklappt.

Unter Computer/Eigenschaften/Erweiterte Systemeinstellungen/Erweitert/Umgebungsvariablen neue Systemvariablen erstellen:

Name der Variablen: ANT_HOME
Wert der Variablen: C:\ant\bin

Name der Variablen: JAVA_HOME
Wert der Variablen: C:\Program Files\Java\jdk1.6.0_16

Der Systemvariable Path dann noch folgendes hinzufügen: ;%ANT_HOME%;%JAVA_HOME%\bin\java.exe

(Windows Vista) Habe den Fehler gemacht und ANT_HOME und JAVA_HOME nicht explizit gesetzt. Fehlermeldung bleibt nun aus.

Ich danke Dir soweit Robo - die Umgebung funktioniert und jetzt werde ich mich noch ein wenig in ANT einlesen. Ich markiere diesen Thread mal als erledigt, da die Integration externer Libs ja jetzt funktioniert und die ANT-Geschichte bestimmt ein Paar Tage dauert.

Aber echt ne' gute Sache mit der Ameise!
ALEC23 ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Sinn von Frameworks? alessandro Off-Topic Diskussionen 45 31.12.2009 17:51
DRINGEND: Suche Zend Framework - Coder jens76 Beitragsarchiv 0 03.11.2009 11:28
Zend Framework + Smarty + Login foxtrot Beitragsarchiv 0 29.10.2009 11:13
[S] Zend Framework Coder ThisRockZ Beitragsarchiv 0 14.10.2009 13:14
Kohana Framework / CakePHP / Zend ramses PHP-Fortgeschrittene 6 29.09.2009 01:38
Zend Framework: Dekorator für HTMLTag um DijitElement. #EFEFEF PHP-Fortgeschrittene 2 30.07.2009 09:25
Release 1.10-RC2 des Adventure PHP Framework (APF) veröffentlicht dr.e. Beitragsarchiv 2 21.07.2009 11:22
Entwickler für Zend Framework Applikation gesucht UdoW Beitragsarchiv 0 10.05.2009 13:19
Zend Framework Joe Off-Topic Diskussionen 4 04.05.2009 20:14
Suche Schüler o.ä. mit Zend Framework Erfahrung -> 200 Euro mrmojo Beitragsarchiv 3 10.01.2009 15:38
Zend Studio for Eclipse und Zend Framework KeKs0r PHP-Fortgeschrittene 5 15.12.2008 15:10
Zend Framework Und Datei Upload ! 7Style PHP Tipps 2008 7 28.09.2008 00:52
BrickOO :: PHP Framework Hroudtwolf Scriptbörse 14 06.05.2008 12:04
Zend Framework Melchior PHP-Fortgeschrittene 29 13.03.2008 21:12

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
netbeans zend framework, zend framework netbeans, netbeans zend plugin, netbeans zend, netbeans zend framework einbinden, zend netbeans einbinden, zend netbeans, netbeans php tools integration, zend in netbeans einbinden, zend framework in netbeans einbinden, zend plugin netbeans, netbeans zend framework einrichten, netbeans framework, zend framework in netbeans, netbeans framework einbinden, ant für php betbeans, netbeans zend einbinden, netbeans zend einrichten, zend framework netbeans einbinden, add code folding for php arrays to netbeans xml

Alle Zeitangaben in WEZ +2. Es ist jetzt 14:55 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum