Hat das inzwischen jemand zum Laufen gebracht?
Vor Aufruf der getitcmd.exe soll man einmal die rsvars.bat aufrufen, um die Umgebungsvariablen von der
IDE zu setzen.
Auflisten der Packages funktioniert. (so halbwegs)
Nur das mit dem Installieren, also der Hauptfunktion, ... naja.
Code:
cd /d "C:\Program Files (x86)\Embarcadero\Studio\21.0\bin"
rsvars
getitcmd --list= --filter=installed
getitcmd --list= --filter=all
getitcmd --install=Navigator-1.6.1 --accepteulas --installdeferred --verb=minimal --donotsetenvfile
Nach
getitcmd --list= --filter=all
stürzt GetIt ab, nachdem es fertig ist.
Code:
...
Command finished with success!
Runtime error 217 at 00409825
Bei
getitcmd --install=Navigator-1.6.1 --accepteulas --installdeferred --verb=minimal --donotsetenvfile
heißt es
Code:
ERROR: Too many arguments.
[edit] OK, Installdeferred, darf nicht mit Anderem zusammen. [/edit]
Das sind übrigens auch so in etwa die Parameter, welche die GetIt-Dependencies in den Projektoptionen benutzen, was auch nicht benutzbar ist.
Code:
[Warning Warnung] Checking GetIt
package dependencies
[MSBuild Fehler] Unerwarteter Fehler bei der GetItCmd-Aufgabe.
System.NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.
bei Borland.Build.Tasks.Common.CommandLineTask.Execute()
bei Borland.Build.Tasks.Shared.GetItCmd.Execute()
bei Microsoft.Build.BuildEngine.TaskEngine.ExecuteInstantiatedTask(EngineProxy engineProxy, ItemBucket bucket, TaskExecutionMode howToExecuteTask, ITask task, Boolean& taskResult)
aus CodeGear.Common.Targets
(wer zu den GetIt-Dependencies etwas sucht und dort findet, dass man BDSHost=true in die Umgebungsvariablen schreiben soll ... hier sieht man das Gegenstück dazu)
Code:
<!-- Since there's an
IDE limitation about handling more than one compilation,
GetItCmd should be called only when compiling from command line -->
<Target Name="_CheckGetItPackageDependencies" DependsOnTargets="_CheckBDSHostObject"
Condition="('$(GetItPackages)'!='') And '$(BDSHost)'!='true'">
<CallTarget Targets="_ExecGetItCmd"/>
</Target>
<Target Name="_ExecGetItCmd">
<Warning Text="Checking GetIt
package dependencies"/>
<GetItCmd
ProjectFileName="$(MSBuildProjectFullPath)"
Accept_eulas="true"
InstallPackages="$(GetItPackages)"
DoNotSetEnvFile="true"
Verbosity="Normal"
/>
</Target>
Und bei
getitcmd --install=Navigator-1.6.1 --accepteulas
will GetIt erstmal alles/einiges deinstallieren. (da hab ich den
UAC-Dialog abgebrochen, bevor was kaputt geht)
Als Erstes gleich mal die Delphi-
IDE selbst. (scheint das zu sein, was man sich mühevoll über den GetItInstaller runtergeholt hatte)
Code:
Uninstalling: Uninstalling Library "Delphi Common Files Enterprise German"...
Anfangen wollte ich erstmal mit.
10.4Patch1-10
10.4Patch2de-10
10.4Patch3-10
ParnassusCoreEditor-1.6.1 ?
Navigator-1.6.1
Bookmarks-1.6.1
Icons8-1.0
(Komponenten für's Programm werden wohl nie über GetIt verwendet, so lange man dort keine eigenen/alternativen Paketquellen angeben kann und somit auf's Gutdünken Embas angewiesen ist, außerdem haben wir die Fremdkomponenten größtenteils als Quellcode in einem eigenen Git-Repository ... den Teil aber über eine eigene Paketquelle wäre schon interessant, anstatt es manuell im FinalBuilder zu machen)
Man findet ja nicht viel zum Thema, aber da hat/hatte man auch das selbe Problem, wo Packages deinstalliert werden.
https://qiita.com/ht_deko/items/2e7184431888c6c0612f