Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Projektoptionen bei der Verwendung von Packages (https://www.delphipraxis.net/172121-projektoptionen-bei-der-verwendung-von-packages.html)

ToFaceTeKilla 13. Dez 2012 16:32

Projektoptionen bei der Verwendung von Packages
 
Hallo zusammen,

ich habe folgendes Problem:

Ich habe Units in meiner Anwendung, die allgemein (sprich projektunabhängig) sind (zB eine Logger-Unit). Diese will ich nun in Packages verlegen, damit ich sie problemlos in mehreren Projekten verwenden kann, sodass der Source nur an einer Stelle geändert wird usw.

Das Erstellen der Packages (es sind z.Z. zwei, das eine erfordert das andere) habe ich soweit hinbekommen.
Wenn ich jetzt diese Packages benutzen will (z.B. in einer VCL-Formularanwendung), welche Pfade muss ich dann auf was setzen und welche Haken müssen gesetzt werden? Ich habe schon zig Möglichkeiten probiert (BPLs in den Suchpfad, DCPs, mit Laufzeitpackages linken, etc.), ich bekomme immer entweder den Fehler
"[DCC Fataler Fehler] E2202 Package 'Commons' wird benötigt, konnte aber nicht gefunden werden" oder dass die .DFM für ein Form in dem Package nicht gefunden wird.

Wie wäre es denn korrekt?
Am liebsten wäre es mir, wenn die Packages in die Exe kompiliert würden, wenn das geht. Ansonsten kann ich natürlich auch die BPLs dazu legen, aber dafür müsste es ja erstmal kompilieren.

Schonmal vielen Dank für die Aufmerksamkeit :wink:

stahli 13. Dez 2012 16:55

AW: Projektoptionen bei der Verwendung von Packages
 
Hmm, eigentlich musst Du nur den Debug-Ordner in die Bibliothekspfade aufnehmen.

Optional kannst Du in Deiner Projektgruppe mehrere Projekte aufnehmen (z.B. oden Deine Anwendung und daruter einige Packages) und den oberen Projekten "Abhängigkeiten" zuweisen. Dann werden die unteren Projekte immer zuerst neu kompiliert. Man muss bei Komponentenentwicklung nur aufpassen, dass die Unterpackages auch korrekt kompilierbar sind, da im Fehlerfall die erzeugten Komponenten entfernt werden können. Hat man in dem Moment ein Formular im Designer offen, dass solche Komponenten verwendet (hat), werden diese u.U. entfernt.

ToFaceTeKilla 14. Dez 2012 08:32

AW: Projektoptionen bei der Verwendung von Packages
 
Hm :gruebel:
genau das hatte ich definitv auch schon probiert.

Ich habe jetzt nochmal rumprobiert und jetzt funktioniert es kurioserweise.

Die funktionierende Config ist:
- Im Suchpfad des Projektes den Pfad zur DCP des Packages eintragen (alternativ im globalen Bibliothekspfad [WTF nennt man die nicht beide Bibliothekspfad? :roll:])
- Im Projekt unter 'Packages\Laufzeitpackages' die DCP des Packages hinzufügen und 'mit Laufzeitpackages linken' anhaken

Wenn ich jetzt nur noch wüsste, warum das gestern nicht ging...

Aber vielen Dank, stahli!

dummzeuch 14. Dez 2012 13:44

AW: Projektoptionen bei der Verwendung von Packages
 
Hi,

Zitat:

Zitat von ToFaceTeKilla (Beitrag 1195379)
Ich habe Units in meiner Anwendung, die allgemein (sprich projektunabhängig) sind (zB eine Logger-Unit). Diese will ich nun in Packages verlegen, damit ich sie problemlos in mehreren Projekten verwenden kann, sodass der Source nur an einer Stelle geändert wird usw.
[...]
Am liebsten wäre es mir, wenn die Packages in die Exe kompiliert würden, wenn das geht. Ansonsten kann ich natürlich auch die BPLs dazu legen, aber dafür müsste es ja erstmal kompilieren.

So, wie sich das liest, brauchst Du gar keine Packages sondern musst lediglich die gemeinsam genutzten Sourcen in einen (oder mehrere) gemeinsam genutze Ordner (oder Subversion-Externals) verschieben und jeweils in den Projekten diese Ordner in den Suchpfad aufnehmen. Packages machen das Ganze eigentlich nur komplizierter.

twm


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:33 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz