2013-05-23 8 views
7

Korzystanie z Vim Syntastic z projektem Android. (np. com.myproject.project) Nie jest świadomy klas zadeklarowanych w moim projekcie, ale poza bieżącym plikiem. na przykład Następujące flagi błędy:Vim Syntastic Java Nieświadome aktualnych klas projektów

import com.myproject.project.SomeClass; 
... 
SomeClass someclass = new SomeClass(); 
+0

Syntastic pełni funkcję pośrednika między Vimem a wieloma programami zewnętrznymi. Powinieneś: 1. dowiedzieć się, jaki program jest używany do sprawdzenia twojego kodu, 2. zajrzeć do jego dokumentacji, aby uczynić go bardziej inteligentnym; 3. sprawdzić, czy możesz skonfigurować Syntastic. – romainl

+0

Najprawdopodobniej javac jest zdezorientowany, ponieważ uruchamiasz go z niewłaściwego katalogu. – FDinoff

+0

Dziękuję. Używam go w połączeniu z You Complete Me (YCM). – lorean

Odpowiedz

10

pił ten post Configure syntastic to work fine with Android projects których rozwiązania problemu:

Metoda 1:
Inside Vim

:SyntasticJavacEditClasspath 

Następnie dodać następujące okna buforowego

/path-to-your-app/bin/classes 
/path-to-your-android-sdk/platforms/android-19/*.jar 

Metoda 2:
Dodaj następujący kod do .vimrc:

let g:syntastic_java_javac_classpath = "/<path-to-your-app>/bin/classes:/<path-to-your-android-sdk>/platforms/android-19/*.jar" 
+2

O metodzie 2! Nie wiem, czy ktoś ma taką samą sytuację jak moja, ale próbowałem użyć ":" do oddzielenia wielu ścieżek klas, ale to nie działa, więc spróbowałem "\ n" i to działa. Przykład: "//bin/classes\n//platforms/android-19/*.jar". Pamiętaj, że po prostu zastąp ":" przez "\ n", nie wolno dodawać niczego więcej –

1

Oto podsumowanie różnych metod, które pracowały dla mnie linux vim7.4 i Syntastic3.7.0-224 z kredytu każdy.

Metoda 1 - ręczne tworzenie .syntastic_javac_config

1. Edit .vimrc and use this syntax: 
let g:syntastic_java_javac_config_file_enabled = 1 

2. Where you edit your vim files, add this to a file named .syntastic_javac_config 

let g:syntastic_java_javac_classpath = '/home/davis/progs/princeton-algos/week1/libs/algs4.jar' 

Metoda 2 - korzyści bez względu na to gdzie jesteś edytować ścieżkę klasy jest znana.

1. Edit .vimrc and use this syntax: 
let g:syntastic_java_javac_classpath = "/home/davis/progs/princeton-algos/week1/libs/algs4.jar" 

To dodaje słoik i

Metoda 3 - Automatyczne generowanie pliku .syntastic_javac_config

1. Edit .vimrc and use this syntax: 
let g:syntastic_java_javac_config_file_enabled = 1 
2. Edit a java file with vim 
3. :SyntasticJavacEditClasspath 
When the edit window opens, add the class path without quotes and a newline after each entry the class path. In my case, this is the entry 
for the setting includes the current folder as well: 
/home/davis/progs/princeton-algos/week1/libs/algs4.jar 
. 
4 :wq the edit setting window 
5. Now the class path is set for syntastic when editing files from that location. If you edit from a new directory, you will need to repeat the process. 

Oprócz powyższych uwag, to post pomógł również.