Próbuję IntelliJ IDEA 9 przez 30 dni i podoba mi się to, co widzę do tej pory. Jedyny problem mam rażące jest to, że redaktor zdaje się nie mieć pojęcia, co zrobić z JSP metod niejawna obiektów ...IntelliJ 9 nie może rozpoznać metod obiektów niejawnych na stronach JSP?
Przykład 1:
<body>
<% out.println("Hello, World!"); %>
</body>
Edytor zaznacza „println” w tym oświadczeniu jako błąd i mówi: Nie można rozwiązać metody 'println (java.lang.String)' Ta składnia jest tak prosta, jak to tylko możliwe, i działa dobrze, jeśli zainstaluję ją na moim serwerze aplikacji (Tomcat 7), ale IntelliJ nalega, że nie ma takiej metody dla obiektu "na zewnątrz". To nie tylko "out". To nie rozpoznaje żadnego niejawny obiektu metody ...
Przykład 2:
<body>
<%
String contextRoot = pageContext.getServletContext().getRealPath("");
.
.
.
%>
</body>
W tym przypadku, IntelliJ nie rozpoznaje metody getServletContext(), ale robi rozpoznać Metoda getRealPath(). Jakie to dziwne?
To, co mnie dręczy, to to, że przeszukałem sieć, by wspomnieć o tym problemie z IntelliJ 9, i wymyśliłem zilcha. Sugeruje to, że być może zrobiłem coś dziwnego z moją konfiguracją, ale nie mogę sobie wyobrazić, co. Tak jak powiedziałem powyżej, działa dobrze, jeśli i tak zbuduję i wdrożyłem; po prostu irytujące jest to, że moje strony JSP są wypełnione fałszywymi czerwonymi błędami w każdym miejscu. Kinda przede wszystkim pokonuje cel użycia inteligentnego IDE.
W każdym razie, pomyślałem, że rzucę to przed ekspertów i zobaczę, czy możecie rzucić trochę światła na tę sprawę. Wszelkie docenianie byłoby docenione!
Dzięki za odpowiedzi, Colin. Właściwie nie pracuję z projektem Maven. To jest po prostu stara IntelliJ IDEA wdrażająca wybuchowy artefakt wojenny do Tomcat 7.Jestem otwarty na wykorzystanie projektu Maven jako alternatywy, ale wydaje się dziwne, że musiałbym po prostu wyczyścić wszystkie czerwone w edytorze ... – Syndog
Czy dodałeś biblioteki aplikacji do swojego projektu? W 'file' ->' Struktura projektu' -> 'Moduły' ->' Zależności' -> 'Dodaj'. Jeśli skonfigurowałeś tomcat jako serwer aplikacji w IntelliJ, będziesz mógł dodać zależności. –
Eureka! Okay, więc musimy dodać biblioteki serwerów aplikacji do zależności projektu. Nie zdawałem sobie sprawy, że te obiekty są specyficzne dla aplikacji internetowej. Tak więc, jeśli w pewnym momencie wdrażam na innym serwerze aplikacji (na przykład JBoss), musiałbym zrobić to samo z jego bibliotekami? Dziękuję bardzo za pomoc, Colin. – Syndog