2013-03-06 10 views
5

Czy istnieje rozwiązanie oparte na eclipse do refaktoryzacji kodu Java za pomocą skryptów?Refaktoryzacja kodu java za pomocą skryptów

Przeczytałem o zestawie narzędzi Eclipse Language, ale wydaje się, że implikuje on stworzenie wtyczki, która brzmi jak przesada dla jednorazowej operacji.

Czy istnieje jakiś rodzaj powiązań z językiem skryptowym lub przynajmniej sposób wywołania kodu refaktoryzacji z języka Java, ale bez wtyczki?

Przykład użycia próbki: Mam projekt, który wykorzystuje klasy generowane przez castor i chcę przeprowadzić migrację do JAXB 2. Oznacza to wiele refaktoryzacji w istniejącym kodzie, czego nie można wykonać przez wyszukiwanie i zamienianie, ani wyrażeń regularnych , z powodu wrażliwości kontekstowej.

Odpowiedz

1

Kiedy refaktoryzacja jest skomplikowana, zazwyczaj piszę transformację z Recoder. Jedyną wadą tego narzędzia jest to, że czasami łamie on format kodu (np. Przesuwając komentarze dookoła lub dodając/usuwając białe znaki), ale jak na razie wystarczył dla moich wymagań.

+0

łącze jest zerwane – Elazar

+0

Łącze działa od 2015-09-17, ale ostatnia wersja Recoder była w 2013 roku (był to aktywny projekt, kiedy opublikowałem swoją odpowiedź). Prawdopodobnie nie będzie obsługiwać środowiska Java 8. – Javier

+0

Działa teraz. Przepraszam. – Elazar

-1

Eclipse zapewnia pomoc w refaktoryzacji. Na przykład, jeśli zaznaczysz fragment kodu, który chcesz refaktoryzować, i klikniesz prawym przyciskiem myszy, otrzymasz opcję Refactor. Z których można wyodrębnić ze sposobem (z jednej i powszechnie używać podczas refactoring), interfejs ekstrakt nadklasą itp

Można również sprawdzić te:

http://www.eclipse.org/articles/article.php?file=Article-Unleashing-the-Power-of-Refactoring/index.html

Eclipse: Most useful refactorings

+0

Wiem o opcji refactoring w Eclipse i używam go cały czas, ale czasami potrzebuję czegoś bardziej konfigurowalnego, jak: transform "object.addThing (thing)" na "object.getThings(). Add (thing) ", tylko wtedy, gdy obiekt jest instancją klasy znajdującą się w danym pakiecie ... – Mikarnage

Powiązane problemy