Was ist das IML-Dateiformat?
Eine .iml-Datei ist eine XML-Konfigurationsdatei, die ein einzelnes Modul innerhalb eines IntelliJ IDEA-Projekts beschreibt. Jede Moduldefinition speichert den Modultyp (wie JAVA_MODULE, WEB_MODULE oder PYTHON_MODULE), die Quell- und Testverzeichnisse innerhalb des Inhaltsverzeichnisses des Moduls, ausgeschlossene Ordner sowie die vollständige Abhängigkeitskette - einschließlich JDK, anderer Module und Bibliotheksreferenzen. IntelliJ IDEA, Android Studio und andere JetBrains-IDEs lesen .iml-Dateien, um die Projektstruktur zu bestimmen, ohne das Dateisystem erneut scannen zu müssen.
Die Datei ist einfaches UTF-8 XML. Das Wurzelelement ist <module type="..." version="4">, und sein primäres Kindelement ist die Komponente NewModuleRootManager, die die Elemente <content>, <sourceFolder>, <excludeFolder> und <orderEntry> enthält. Es sind keine Binärdaten, Kompressionen oder Verschlüsselungen involviert.
.iml-Dateien werden automatisch von der IDE erstellt und gepflegt. Sie werden entweder im eigenen Stammverzeichnis des Moduls oder innerhalb des Projektordners .idea/ gespeichert, abhängig von der IDE-Version und dem Projektlayout. JetBrains empfiehlt, .iml-Dateien in Projekten mit mehreren Entwicklern, die Gradle oder Maven verwenden, zur .gitignore hinzuzufügen, da die IDE sie beim Import automatisch aus dem Build-Skript neu generiert. In Projekten ohne Build-Tool werden .iml-Dateien normalerweise unter Versionskontrolle gestellt.
Eine manuelle Bearbeitung ist selten erforderlich; die IDE verwaltet die Moduleinstellungen über den Dialog „Project Structure“.
Sicherheit
RISIKO: LOWIML-Dateien sind einfache XML-Konfigurationsdateien - nicht ausführbar. Sie können externe JARs oder Bibliotheken referenzieren, die theoretisch auf bösartige Pfade verweisen könnten, aber die Datei selbst kann keinen Code ausführen. Sicher im Texteditor zu öffnen. In einem bösartigen Repository könnte eine manipulierte .iml-Datei Abhängigkeitspfade auf unerwartete Orte verweisen lassen - prüfen Sie dies vor der Synchronisierung in einem unbekannten Projekt.
Formatdetails
kurz gefasst- ACT! Internet Mail Message - Veraltete E-Mail-Nachrichtendatei der ACT! Kontaktmanagement-Software (Sage); obskur und praktisch hinfällig.
Programme zum Öffnen von IML-Dateien
Technische Details
technische Spezifikation| XML-Wurzelelement | `<module type="..." version="4">` - `version="4"` ist die aktuelle Formatrevision |
| Modultypen | `JAVA_MODULE`, `WEB_MODULE`, `PYTHON_MODULE`, `ANDROID_MODULE` und andere IDE-spezifische Typen |
| Kernkomponente | `NewModuleRootManager` enthält Quellverzeichnisse, ausgeschlossene Ordner und Einträge zur Abhängigkeitsreihenfolge |
| Deklaration der Quellverzeichnisse | `<sourceFolder url="..." isTestSource="false"/>` unterscheidet zwischen Produktions- und Test-Quellsätzen |
| Abhängigkeitseinträge | `<orderEntry>`-Elemente referenzieren JDK, Modul-zu-Modul-Abhängigkeiten und Bibliotheks-JARs |
| Kodierung | Einfacher UTF-8-Text; keine Kompression, Verschlüsselung oder Binärabschnitte |
| Speicherort | Modul-Stammverzeichnis oder `.idea/`-Projektordner, abhängig von IDE-Version und Projekt-Setup |
| Automatische Generierung | Gradle- und Maven-Importe generieren `.iml`-Dateien neu; manuell bearbeitete Einträge können beim Re-Import überschrieben werden |
| Leitfaden zur Versionskontrolle | Vom VCS ausschließen, wenn Gradle/Maven verwendet wird; einbeziehen, wenn kein Build-Tool vorhanden ist |
| Versionshistorie des Formats | Das `version`-Attribut des Wurzelelements hat sich über die IDEA-Releases von `2` → `3` → `4` entwickelt |
| Kompatible IDEs | IntelliJ IDEA, Android Studio, PyCharm, WebStorm und alle anderen IDEs der JetBrains-Plattform |
| Typische Größe | 1 KB - 50 KB, größer bei Modulen mit vielen Abhängigkeiten oder Quellverzeichnissen |
| Veröffentlicht | IntelliJ IDEA 1.0, January 2001 |
| Neueste Version | No formal versioning; format evolved continuously with IDEA releases; current format used in IDEA 2024+ |
| Spezifikation | www.jetbrains.com |
IML-Konvertierungen
Community Q&A
von Nutzern gefragtNoch keine Fragen - stellen Sie die erste Frage zu IML-Dateien.