2015-05-05 4 views
6

Wir haben eine build.xml in unserem Projekt, aber IntelliJ kann daraus nicht importieren. Ich bekomme ein:IntelliJ konnte keine proto-kompilierten Java-Klassendateien erkennen

Cannot import anything from <path_to>/build.xml file. 

auf Eclipse Ich kann ein tun:

File -> Import -> General -> Existing Projects into workspace. 

und wählte Ordner der obersten Ebene. Ich habe das gleiche in IJ gemacht. Das Projekt importiert und indiziert, kann ich eine Suche für jede Klasse durchführen. ProtoBuf-kompilierte Klassendateien werden jedoch nicht erkannt. Ich habe das Proto-Plugin installiert, so dass die Syntax meine .proto-Dateien hervorhebt, merkt aber immer noch nicht, dass es eine kompilierte Klassenausgabe gibt, auf die es sich beziehen muss. Muss ich etwas Spezielles tun, damit diese Dateien erkannt werden?

Antwort

11

da dies ist so ziemlich der einzige Ort, wo ich eine genaue Beschreibung für das Problem finden konnte, war ich mit Idee gegenüber, ich antworten, auch wenn es eine alte Frage ist.

Es stellt sich heraus, dass, wenn die .java Datei, die durch den Protokollpuffer Compiler generiert wird, größer als 2,5 MB ist (Standardeinstellung), ignoriert Idea es insgesamt. Selbst wenn es eine .class Datei gibt, selbst wenn compile/make erfolgreich ist, selbst wenn Sie Ihr Projekt mit Maven gut machen.

Um das zu beheben, bearbeiten Sie einfach Ihre idea.properties Datei (es ist in der bin Ordner in Ihrem Idea Installationsordner) und entweder kommentieren Sie diese Einstellung aus, oder legen Sie es auf etwas größer als Ihre erzeugte .java-Datei (in meinem Fall, ich setzen Sie ihn auf 15000, wie meine generierte Datei in Größe zur Zeit etwa 8 MB ist):

#--------------------------------------------------------------------- 
# Maximum file size (kilobytes) IDE should provide code assistance for. 
# The larger file is the slower its editor works and higher overall system memory requirements are 
# if code assistance is enabled. Remove this property or set to very large number if you need 
# code assistance for any files available regardless their size. 
#--------------------------------------------------------------------- 
idea.max.intellisense.filesize=2500 

Hinweis: zumindest unter Linux, wo die Standard-Update-Politik „überschreiben die alte Idee Ordner mit dem, was Sie zu sein scheint gerade heruntergeladen "muss diese Änderung nach jedem Update/Upgrade angewendet werden.

+1

Danke michele :) – Siddhartha

+1

sparen Sie meinen Tag, danke – indrap

+0

Auch funktioniert für mich, aber ich finde immer noch, dass die Dokumentation verwirrend. Ich möchte * die Datei nicht im Editor öffnen und möchte auch keine Codeunterstützung dafür haben. Ganz im Gegenteil möchte ich Code-Hilfe vermeiden, wenn ich die Datei zufällig in der Idee öffne, um sie nicht abzustürzen. Gibt es keine Möglichkeit, das Limit für die Kompilierung unabhängig vom Limit für die Codehilfe im Editor zu konfigurieren? –