Per distribuire l'applicazione in una posizione remota, è necessario utilizzare lo strumento paclient.exe (Platform Assistant Client Application).
Per ottenere i parametri passati, compilare ed eseguire il progetto da RAD Studio e quindi controllare la scheda delle finestre di messaggio dell'IDE.
Controllare l'immagine successiva per un'applicazione OSX utilizzando un profilo chiamato Local
Da qui è possibile estrarre tutti i parametri passati al paclient.exe
- Eliminare nell'ospite i file precedenti (esiste)
c: \ programmi (x86) \ embarcadero \ rad studio \ 11.0 \ bin \ paclient.exe --Clean = "Project7.app, C: \ Users \ RRUZ \ Desktop \ Test [email protected]_.tmp"
il file [email protected]_.tmp
è un file temporaneo creato dal ide che contiene tutti i file da distribuire in questo caso il contenuto è in questo modo
Project7.app\Contents\MacOS\Project7.rsm
Project7.app\Contents\Entitlements.plist
Project7.app\Contents\MacOS\libcgunwind.1.0.dylib
Project7.app\Contents\MacOS\Project7
Project7.app\Contents\Resources\Project7.icns
- Copiare l'Info.plist (contiene informazioni settup la il file .app come l'icona utilizzata e la versione) sull'host
c: \ program files (x86) \ Embarcadero \ RAD Studio \ 11.0 \ bin \ paclient.exe --put = "OSX32 \ Debug \ Project7.info.plist, Project7.app \ Contents \, 1 , Info.plist" Local
- Copiare il file di
libcgunwind.1.0.dylib
(libreria) per l'host
c: \ program files (x86) \ Embarcadero \ RAD Studio \ 11.0 \ bin \ paclient.exe --put = "c: \ program files (x86) \ embarc adero \ rad studio \ 11.0 \ Redist \ osx32 \ libcgunwind.1.0.dylib, Project7.app \ Contents \ MacOS \, 1, libcgunwind.1.0.dylib" locale
c: \ program files (x86) \ Embarcadero \ RAD Studio \ 11.0 \ bin \ paclient.exe --put = "OSX32 \ Debug \ project7, Project7.app \ Contents \ MacOS \, 1, project7" Local
- Copiare il file dei simboli di debug remoto al Host
c: \ program files (x86) \ Embarcadero \ monolocale rad \ 11.0 \ bin \ paclient.exe --put = "OSX32 \ Debug \ project7 .rsm, Project7.app \ Contents \ MacOS \, 1, Project7.rsm" locale
- Copia sull'icona del progetto all'Host
c: \ programmi (x86) \ embarcadero \ rad studio \ 11.0 \ bin \ paclient.exe --put = "c: \ programmi (x86) \ embarcadero \ rad studio \ 11.0 \ bin \ delphi_PROJECTICNS.icns , Project7.app \ Contents \ Resources \, 1, Project7.icns" locale
- Copiare il file Entitlements.plist all'Host
c: \ program files (x86) \ embarcadero \ rad studio \ 11.0 \ bin \ paclient.exe --put = "OSX32 \ Debug \ Project7.entitlements, Project7.app \ Contents \, 1, Entit lements.plist" locale
finale del copione
Infine si può mettere tutto questo in un file di script in questo modo
call "C:\Program Files (x86)\Embarcadero\RAD Studio\11.0\bin\rsvars.bat"
MSBuild Project7.dproj
"c:\program files (x86)\embarcadero\rad studio\11.0\bin\paclient.exe" --Clean="Project7.app,C:\Users\RRUZ\Desktop\Test Deploy\files.txt"
"c:\program files (x86)\embarcadero\rad studio\11.0\bin\paclient.exe" --put="OSX32\Debug\Project7.info.plist,Project7.app\Contents\,1,Info.plist" Local
"c:\program files (x86)\embarcadero\rad studio\11.0\bin\paclient.exe" --put="c:\program files (x86)\embarcadero\rad studio\11.0\Redist\osx32\libcgunwind.1.0.dylib,Project7.app\Contents\MacOS\,1,libcgunwind.1.0.dylib" Local
"c:\program files (x86)\embarcadero\rad studio\11.0\bin\paclient.exe" --put="OSX32\Debug\Project7,Project7.app\Contents\MacOS\,1,Project7" Local
"c:\program files (x86)\embarcadero\rad studio\11.0\bin\paclient.exe" --put="OSX32\Debug\Project7.rsm,Project7.app\Contents\MacOS\,1,Project7.rsm" Local
"c:\program files (x86)\embarcadero\rad studio\11.0\bin\paclient.exe" --put="c:\program files (x86)\embarcadero\rad studio\11.0\bin\delphi_PROJECTICNS.icns,Project7.app\Contents\Resources\,1,Project7.icns" Local
"c:\program files (x86)\embarcadero\rad studio\11.0\bin\paclient.exe" --put="OSX32\Debug\Project7.entitlements,Project7.app\Contents\,1,Entitlements.plist" Local
Nota: Ricordare creare un file con i nomi dei file di tutti i i file da distribuire, in questo esempio di script si chiama files.txt
, questo file viene utilizzato da paclient per pulire i file distribuiti in precedenza.
Per la costruzione del progetto; hai provato qualcosa come 'msbuild Project.dproj/p: Config = Release; Platform = OSX32'? – TLama
Ma questo modifica solo le impostazioni di costruzione e non distribuisce l'applicazione nella destinazione. – Salvador