SublimeLinter funktioniert nicht mit Java

2

Ich versuche, Sublimelinter mit Java zu arbeiten, damit ich mein Java-Programm lintieren kann, aber ich weiß nicht, was Javac -Xlint ist oder was der Pfad ist. Meine Frage ist also, was ist PATHs und -xlint?

Ich habe auf Subliminter hingewiesen C:\Program Files\Java\jdk1.7.0_17\bin für Java-Dateien, aber es funktioniert immer noch nicht.

James Hudson
quelle

Antworten:

2

Sublimelinter hat keine einfache Dokumentation. So habe ich es gemacht, damit es für mich funktioniert.

In Ihrer Sublimetext-Projektdatei müssen Sie das SublimeLinter-Objekt einrichten und die Java-Lint-Einstellungen konfigurieren.

Angenommen, Sie haben eine Projektstruktur wie folgt:

C:\path\to\projectname
├───src
│   ├───main
│   │   ├───java
│   │   │   └───com
│   │   │       └───yoursite
│   │   ├───resources
│   │   └───webapp
│   │       └───WEB-INF
│   └───test
│       └───java
│           └───com
│               └───yoursite
└───target
    ├───classes
    │   └───com
    │       └───yoursite
    ├───projectname
    │   ├───META-INF
    │   └───WEB-INF
    │       ├───classes
    │       │   └───com
    │       │       └───yoursite
    │       └───lib
    ├───javadoc-bundle-options
    ├───maven-archiver
    └───surefire
  • working_directory : Der absolute Pfad zu Ihrem Arbeitsbereich. (Wer weiß, wie man Pfade im folders.path?) Auch der Rest der Pfade ist relativ zu diesem Pfad.
  • lint_args : Argumente an Javac übergeben
    • -sourcepath : Pfad zu Ihren Quelldateien.
    • classpath : Pfad zu kompilierten Klassen.
    • -Xlint. -Xlint:-serial: javac Befehlszeilenoptionen.
    • {filename} : SublimeLinter-Verweis auf die aktuelle Datei.

Von Javac

-Xlint : Aktivieren Sie alle empfohlenen Warnungen. In dieser Version werden alle verfügbaren Warnungen empfohlen. -Xlint: seriell : Warnung vor fehlenden serialVersionUID-Definitionen für serialisierbare Klassen.

Projektname.Sublime-Projekt 1

{
    "folders": [
        {
            "path": "C:\\path\\to\\projectname",
            "name": "projectname"
        }
    ],
    "settings": {
        "SublimeLinter":
        {
            "Java":
            {
                "working_directory": "C:\\path\\to\\projectname",
                "lint_args":
                [
                    "-sourcepath", "src/main/java;c:\\some\\absolute\\path",
                    "-classpath", "C:\\Users\\UERNAME\\.m2\\repository\\path\\to\\file.jar;target/classes",
                    "-Xlint", "-Xlint:-serial",
                    "{filename}"
                ]
            }
        }
    }
}
grocky
quelle
Einverstanden. Viel zu viel meiner Meinung nach.
grocky
0

Sie können Ihrem CLASSPATH auch einfach die Ordner hinzufügen, die die von Ihnen verwendeten Klassen enthalten.

Zenadix
quelle