Ist es möglich, anstatt alle Runtime-Jars in MPS zu importieren, einfach externes Abhängigkeitsverwaltungstool wie Maven zu verwenden und es alle benötigten Bibliotheken automatisch in MPS auflösen und hochladen zu lassen?Verwenden von Maven als Dependency Management Manager für MPS baseLanguage Modell?
Antwort
Kurze Antwort: Nein
Lange Antwort: Theoretisch Sie Maven oder gradle verwenden können, um Abhängigkeiten und die transitiven Abhängigkeiten zu holen. Zum Beispiel können Sie die copy-dependencies Aufgabe von Maven verwenden, um die Artefakte an einige Orte zu kopieren. In Gradle ist es sogar easier. Dann wählen Sie den Ordner auf der Registerkarte "Laufzeit" Ihrer Lösung aus. An dieser Stelle werden Sie enttäuscht sein, weil es nicht den Ordner, sondern alle JARs in diesem Ordner als Bibliotheken hinzugefügt hat. Es gibt keine Möglichkeit, MPS mitzuteilen, alle Jars von einem Ort zu verwenden, es verweist nur auf einzelne JAR-Dateien.
Die einzige Möglichkeit, wie dies theoretisch funktionieren könnte, ist die Verwendung von Gradle und nach dem Abrufen der Abhängigkeiten auch die MSD-Datei programmgesteuert ändern. Synchronisieren Sie die Gläser in there mit den Gläsern, die abgerufen wurden. Ich bin mir nicht sicher, wie ich das mit Maven machen soll. Aber mit groovy sollte es nicht so ein Problem sein.
Wenn Sie sich entscheiden, den Gradle zu versuchen, würden wir uns sehr freuen, eine Pull-Anfrage zu sehen, die diese Funktion zu unserem gradle plugin hinzufügt. ;)
Sie wahrscheinlich die MPS Build Language verwenden sollen:
Build-Sprache ist eine erweiterbare Build Automation DSL zur Definition in einer deklarativen Weise aufbaut. In Ant generiert, nutzt es die Ant-Ausführungskraft und hält Ihre Quellen sauber und frei von Unordnung und irrelevanten Details. Als ein Stapel von MPS-Sprachen mit ANT am unteren Rand organisiert, ermöglicht es jedem Teil Ihres Build-Prozesses, auf einer anderen Abstraktionsebene ausgedrückt zu werden. Das Erstellen eines komplexen Artefakts (wie ein MPS-Plug-In) könnte in nur einer Codezeile angegeben werden, wenn Sie die Sprachkonventionen befolgen, aber gleichzeitig nichts daran hindert, tiefer zu tauchen und die Details wie Dateiverwaltung oder Manifesteigenschaften.
- 1. Maven Dependency Management für Plugin-Abhängigkeiten
- 2. Implementieren Serializable in BaseLanguage-Klasse
- 3. Unity3D packet manager/dependency manager
- 4. Maven Dependency jar für BuildPluginManager
- 5. Python Dependency Management auf EMR
- 6. AngularJS: Dependency Management
- 7. Dependency Management: Subprozess32 benötigt für Python2.7
- 8. Maven Build anders als Dependency Tree
- 9. C++ Dependency Management Best Practice
- 10. gwt-dev als maven dependency issue
- 11. Objective C Dependency Management mit statischen Bibliotheken
- 12. Maven: Aggregation vs. Dependency
- 13. Maven Dependency Resolution
- 14. Maven Dependency Tree - Einige Abhängigkeiten von Spring verwenden alte Version
- 15. Integration von Microsoft Test Manager mit TFS für Bug-Management
- 16. Nuget Dependency Management - was sind meine Optionen?
- 17. Maven-Vererbung und Distribution Management
- 18. Automatisierungstests für MPS-Anwendungen
- 19. Maven-Dependency-Plugin: NoSuchElementException für Aether RepositorySystem
- 20. Maven Dependency Scrubber?
- 21. Local maven dependency repository
- 22. Maven Dependency Plugin Verwendung
- 23. Verwenden Sie WAR als Abhängigkeit in Maven
- 24. Dependency Management in Git-Repositories (mit Submodulen)
- 25. Holen Sie sich Eigentum von Maven Dependency
- 26. Benötigte Java-Version von Maven Dependency?
- 27. maven dependency plugin ignoriert Abhängigkeitsversionen?
- 28. Smarter Native Dependency Handling mit Maven
- 29. Verwenden von Maven als Build-Tool für Weblogic 10.3
- 30. asp.net EF-Code erstes Modell für PBX-Management
Ein bisschen müde von Laufzeit Abhängigkeiten und herauszufinden, dass ich ihre Versionen vermasselt –