Νέες λειτουργίες της έκδοσης 3.2 (JDT)

Στο παρόν περιέχονται περιγραφές ορισμένων από τις πιο ενδιαφέρουσες ή σημαντικές αλλαγές που έχουν γίνει στα εργαλεία ανάπτυξης Java για την έκδοση 3.2 του Eclipse. Χωρίζονται στις εξής κατηγορίες:

Ανατρέξτε επίσης στο έγγραφο Τι νέο υπάρχει στο Eclipse Platform 3.2 για αλλαγές στην πλατφόρμα.

Βελτιστοποίηση δομής Java

Βελτιστοποίηση δομής "Εισαγωγή έμμεσης αναφοράς"

Η Εισαγωγή έμμεσης αναφοράς αποτελεί μια νέα μέθοδο βελτιστοποίησης δομής η οποία σας επιτρέπει να ανακατευθύνετε όλα τα στοιχεία υποβολής κλήσης μιας μεθόδου σε νέα μέθοδο. Η νέα μέθοδος καλεί την αρχική. Μπορείτε να αντικαταστήσετε την προεπιλεγμένη υλοποίηση της νέας μεθόδου με οποιαδήποτε άλλη επιθυμείτε.

Αυτού του είδους η έμμεση αναφορά είναι χρήσιμη όταν χρειάζεται να γίνει εισαγωγή νέας συμπεριφοράς σε μια μέθοδο αλλά ισχύουν τα εξής:

  • Δεν μπορεί να γίνει αλλαγή της μεθόδου επειδή προέρχεται από βιβλιοθήκη.
  • Η μέθοδος δεν πρέπει να αλλάξει επειδή αποτελεί μέθοδο API.

Χρησιμοποιήστε την έμμεση αναφορά για την επιδιόρθωση σφαλμάτων στην αρχική μέθοδο ή ως ένα γρήγορο τρόπο για να προσθέσετε κώδικα πριν ή μετά από όλες τις κλήσεις μιας μεθόδου.

Για να εκτελέσετε τη βελτιστοποίηση δομής Εισαγωγή έμμεσης αναφοράς, επιλέξτε μια μέθοδο, καλέστε την ενέργεια Βελτιστοποίηση δομής > Εισαγωγή έμμεσης αναφοράς... και καταχωρήστε ένα όνομα και την κλάση δήλωσης για τη νέα μέθοδο.

Πλαίσιο διαλόγου "Εισαγωγή έμμεσης αναφοράς"

Η μέθοδος προστίθεται στην επιλεγμένη κλάση δήλωσης.

Προεπισκόπηση εισαγωγής έμμεσης αναφοράς με ενημερωμένες παραπομπές

Όλες οι παραπομπές ενημερώνονται ώστε να καλούν τη νέα μέθοδο.

Αποτέλεσμα μετά την εισαγωγή έμμεσης αναφοράς

Βελτιστοποίηση δομής "Εξαγωγή υπερκλάσης"

Μια νέα μέθοδος βελτιστοποίησης δομής που ονομάζεται Εξαγωγή υπερκλάσης εξάγει μια κοινή υπερκλάση από ένα σύνολο αδελφικών ειδών. Τα επιλεγμένα αδελφικά είδη γίνονται άμεσες υποκλάσεις της εξαγόμενης υποκλάσης μετά την εφαρμογή της βελτιστοποίησης δομής. Επιπλέον, η Εξαγωγή υπερκλάσης επιτρέπει τη χρήση της εξαγόμενης υπερκλάσης στον κώδικα όπου αυτό είναι δυνατόν.

Τα JavaEditorTests και PropertiesEditorTests αποτελούν αδελφικά είδη στο παράδειγμα που ακολουθεί. Η πρώτη εικόνα δείχνει την ιεραρχία ειδών πριν τη βελτιστοποίηση δομής.

Ιεραρχία πριν την εξαγωγή του EditorTests

Η επόμενη εικόνα εμφανίζει την ιεραρχία ειδών μετά την εξαγωγή του EditorTests με τη βελτιστοποίηση δομής Εξαγωγή υπερκλάσης.

Ιεραρχία μετά την εξαγωγή του EditorTests

Για να καλέσετε αυτή τη βελτιστοποίηση δομής, χρησιμοποιήστε την ενέργεια Βελτιστοποίηση δομής > Εξαγωγή υπερκλάσης....

Οδηγός εκκαθάρισης πρωτογενούς κώδικα

Η ενέργεια Εκκαθάριση μπορεί να κληθεί για οποιοδήποτε πλήθος αρχείων πρωτογενούς κώδικα ή πακέτων Java ή για ολόκληρο έργο Java. Σας βοηθάει να κάνετε τα εξής:

  • επιδιόρθωση πολλαπλών προβλημάτων ταυτόχρονα
  • εισαγωγή κώδικα για χρήση προτιμώμενου στυλ κώδικα

Δείτε μερικά παραδείγματα ενεργειών που μπορείτε να εκτελέσετε:

  • επιβολή αγκίστρων (ενότητες) για χρήση σε κάθε κύριο σώμα "if", "while" ή "for"
  • προσδιορισμός όλων των προσβάσεων σε πεδία με "this"
  • χρήση "final" όπου αυτό είναι δυνατό

Για να εισάγετε συμβατό κώδικα Java 1.4 σε 5.0, χρησιμοποιήστε την ενέργεια Εκκαθάριση για να πραγματοποιήσετε τα εξής:

  • μετατροπή όλων των βρόχων for σε enhanced for όπου αυτό είναι δυνατό
  • σήμανση όλων των μεθόδων αντικατάστασης με σημειώσεις @Override

Οδηγός εκκαθάρισης

Επιλέξτε ένα έργο, ένα πακέτο ή ένα αρχείο και χρησιμοποιήστε την επιλογή Πρωτογενής κώδικας > Εκκαθάριση... για την εκκίνηση του οδηγού.

Ιστορικό βελτιστοποίησης δομής

Οι περισσότερες βελτιστοποιήσεις δομής που προσφέρονται από το JDT παρακολουθούνται στο Ιστορικό βελτιστοποίησης δομής. Η υποδομή βελτιστοποίησης δομής αποθηκεύει αναλυτικές πληροφορίες σχετικά με τις βελτιστοποιήσεις δομής που έχουν εκτελεστεί στο χώρο εργασίας σας.

Μπορείτε να πραγματοποιήσετε αναζήτηση στο ιστορικό βελτιστοποίησης δομής και να το τροποποιήσετε χρησιμοποιώντας την ενέργεια Βελτιστοποίηση δομής > Ιστορικό...

Πλαίσιο διαλόγου "Ιστορικό βελτιστοποίησης δομής"

Δημιουργία και εφαρμογή σεναρίων βελτιστοποίησης δομής

Οι βελτιστοποιήσεις δομής που εκτελούνται στον τοπικό χώρο εργασίας μπορούν να εξαχθούν σε Σενάριο βελτιστοποίησης δομής και να εφαρμοστούν ξανά σε κάποιο αυθαίρετο χώρο εργασίας.

Αυτού του είδους τα σενάρια βελτιστοποίησης δομής μπορούν να χρησιμοποιηθούν σε διαφορετικά σενάρια, όπως αυτόματη επιδιόρθωση αλλαγών συμπεριφοράς API μεταξύ των επιπέδων λογισμικού ή παροχή επιδιορθώσεων με εμπλουτισμένη σημασιολογία.

Δημιουργήστε ένα σενάριο βελτιστοποίησης δομής από το ιστορικό βελτιστοποιήσεων δομής χρησιμοποιώντας την επιλογή Βελτιστοποίηση δομής > Δημιουργία σεναρίου...

Ενέργεια "Δημιουργία σεναρίου"

Για να εφαρμόσετε το σενάριο βελτιστοποίησης δομής που δημιουργήθηκε σε ένα αυθαίρετο χώρο εργασίας, χρησιμοποιήστε την ενέργεια Βελτιστοποίηση δομής > Εφαρμογή σεναρίου...

Ένα νέο σημείο επέκτασης επιτρέπει στους μεταγραφείς πρόσθετων λειτουργιών να συνεισφέρουν υποστήριξη σεναρίων βελτιστοποίησης δομής για νέες ή ήδη υπάρχουσες βελτιστοποιήσεις δομής. Για περισσότερες λεπτομέρειες, δείτε το σημείο επέκτασης org.eclipse.ltk.core.refactoring.refactoringContributions.

Εξαγωγή αρχείου JAR με βελτιστοποιήσεις δομής

Κατά την εξαγωγή αρχείου JAR από το χώρο εργασίας, ο οδηγός εξαγωγής αρχείου JAR προσφέρει την επιλογή συμπερίληψης πληροφοριών σχετικά με τη βελτιστοποίηση δομής στο αρχείο JAR.

Χρησιμοποιήστε την επιλογή Αρχείο > Εξαγωγή... και επιλέξτε Αρχείο JAR. Στην πρώτη σελίδα του οδηγού εξαγωγής αρχείου JAR, επιλέξτε το τετραγωνίδιο επιλογής Εξαγωγή βελτιστοποιήσεων δομής επιλεγμένων έργων. Πατήστε στη διασύνδεση για να επιλέξετε τις βελτιστοποιήσεις δομής που θα συμπεριλάβετε.

Επιλογή βελτιστοποίησης δομής εξαγωγής αρχείου JAR

Οι πελάτες στη συνέχεια μπορούν να μεταβιβάσουν μια παλαιά εκδοχή του αρχείου JAR σε μια νέα χρησιμοποιώντας τη βελτιστοποίηση δομής Βελτιστοποίηση δομής > Μετάβαση αρχείου JAR.... Εναλλακτικά, μπορείτε επίσης να χρησιμοποιήσετε την ενέργεια Διαδρομή δόμησης > Μετάβαση αρχείου JAR... αν είναι επιλεγμένο ένα αρχείο JAR.

Ενέργεια "Μετάβαση αρχείου JAR"

Αυτή η βελτιστοποίηση δομής ενημερώνει αυτόματα το σύνολο του κώδικα που εξαρτάται από την παλαιότερη εκδοχή του αρχείου JAR ώστε να χρησιμοποιεί τη νέα εκδοχή του αρχείου JAR.

Βελτιστοποιήσεις δομής που λαμβάνουν υπόψη το API

Ορισμένες υπάρχουσες βελτιστοποιήσεις δομής οι οποίες έχουν επεκταθεί για την υποστήριξη συμβατότητας API διατηρώντας το αρχικό μέλος ως εκπροσώπου στο μέλος στο οποίο γίνεται βελτιστοποίηση δομής:

  • Μετονομασία μεθόδου
  • Μετονομασία πεδίου (μόνο για σταθερές)
  • Μετακίνηση μεθόδου
  • Εισαγωγή παραμέτρου
  • Αλλαγή υπογραφής

Τετραγωνίδιο επιλογής "Διατήρηση του αρχικού μέλους ως εκπροσώπου του βελτιστοποιημένου"

Η δημιουργία μέλους εκπροσώπου για τη διατήρηση της συμβατότητας του API μπορεί να ενεργοποιηθεί επιλέγοντας το τετραγωνίδιο επιλογής Διατήρηση αρχικής μεθόδου ως εκπροσώπου της μετονομασμένης μεθόδου στο πλαίσιο διαλόγου βελτιστοποίησης δομής.

Ενημέρωση στοιχείων με παρόμοια ονόματα από την "Μετονομασία είδους"

Η βελτιστοποίηση δομής Μετονομασία είδους μπορεί να μετονομάσει μεταβλητές και μεθόδους με παρόμοια ονόματα με το μετονομασμένο είδος. Αυτή η λειτουργία βοηθάει στο να διατηρούνται σε συγχρονισμό τα ονόματα των μεθόδων και των μεταβλητών με τα ονόματα ειδών.

Περιβάλλον χρήστη ενημέρωση παρόμοιων δηλώσεων

Για να καλέσετε αυτή τη βελτιστοποίηση δομής, επιλέξτε ένα είδος και χρησιμοποιήστε την ενέργεια Βελτιστοποίηση δομής > Μετονομασία...

Μετονομασία υπο-πακέτων με τη βελτιστοποίηση δομής "Μετονομασία πακέτου"

Η βελτιστοποίηση δομής Μετονομασία πακέτου πραγματοποιεί μετονομασία υπο-πακέτων κατ’ απαίτηση.

Πλαίσιο διαλόγου "Μετονομασία πακέτου" με νέο τετραγωνίδιο επιλογής

Σε αυτό το παράδειγμα, το junit.samples.money μετονομάζεται σε junit.examples.money.

Για να καλέσετε αυτή τη βελτιστοποίηση δομής, επιλέξτε ένα πακέτο και χρησιμοποιήστε την ενέργεια Βελτιστοποίηση δομής > Μετονομασία...

Φιλτράρισμα προεπισκόπησης βελτιστοποίησης δομής

Η σελίδα προεπισκόπησης της βελτιστοποίησης δομής υποστηρίζει το φιλτράρισμα αλλαγών. Αυτό αποδεικνύεται ιδιαίτερα χρήσιμο όταν απαιτείται ενημέρωση των αντιστοιχιών κειμένου σε σχόλια και σειρές χαρακτήρων κατά την μετονομασία στοιχείων Java.

Φιλτραρισμένη σελίδα προεπισκόπησης βελτιστοποίησης δομής

Το αποτύπωμα οθόνης εμφανίζει το φιλτραρισμένο πλαίσιο διαλόγου μετονομασίας για αντιστοιχίες κειμένου κατά τη μετονομασία της κλάσης TestCase σε TestCasee.

Μπορεί επίσης να γίνει φιλτράρισμα των αλλαγών που σχετίζονται με την ορατότητα στοιχείων Java.

Λειτουργία επεξεργασίας Java

Προσαρμόσιμη αυτόματη συμπλήρωση περιεχομένου

Η συχνή κλήση της αυτόματης συμπλήρωσης περιεχομένου (Ctrl+Space στις περισσότερες πλατφόρμες) επαναλαμβάνεται μέσω διάφορων κατηγοριών προτάσεων.

Μπορείτε να αντιστοιχίσετε ξεχωριστές συντομεύσεις πλήκτρων στις αγαπημένες σας κατηγορίες προτάσεων και να χρησιμοποιήσετε τη Άνοιγμα σελίδας προτιμήσεων "Ειδικές επιλογές" για την αυτόματη συμπλήρωση περιεχομένου Java > Λειτουργία επεξεργασίας > Αυτόματη συμπλήρωση περιεχομένου > Ειδικές επιλογές για να ρυθμίσετε τις κατηγορίες που θα εμφανίζονται στο προεπιλεγμένο αναδυόμενο παράθυρο αυτόματης συμπλήρωσης περιεχομένου.

Αναδυόμενο παράθυρο αυτόματης συμπλήρωσης περιεχομένου με προτάσεις Java, επαναλαμβανόμενη κλήση εμφανίζει προτάσεις προτύπου

Το νέο σημείο επέκτασης org.eclipse.jdt.ui.javaCompletionProposalComputer επιτρέπει στους μεταγραφείς πρόσθετων λειτουργιών να συνεισφέρουν προτάσεις συμπλήρωσης και κατηγορίες στη διεργασία της αυτόματης συμπλήρωσης περιεχομένου της λειτουργίας επεξεργασίας Java.

Υποστήριξη camel case κατά τη συμπλήρωση του κώδικα

Η συμπλήρωση του κώδικα υποστηρίζει μοτίβα σε camel case. Για παράδειγμα, ως συμπλήρωση στο NPE προτείνεται το NullPointerException. Αυτή η υποστήριξη μπορεί να απενεργοποιηθεί με τη χρήση της προτίμησης Εμφάνιση κολλημένων λέξεων που συμφωνούν με τα κριτήρια στη σελίδα προτιμήσεων Άνοιγμα σελίδας προτιμήσεων αυτόματης συμπλήρωσης περιεχομένου Java > Λειτουργία επεξεργασίας > Αυτόματη συμπλήρωση περιεχομένου.

Λειτουργία επεξεργασίας Java που συμπληρώνει το NPE

Ταχύ μενού για πλαισίωση κώδικα

Το νέο ταχύ μενού Πλαισίωση με επιτρέπει την πλαισίωση μιας επιλογής γραμμών κώδικα. Το μενού έχει τη δυνατότητα επέκτασης με προσαρμοσμένα πρότυπα. Τα πρότυπα γνωρίζουν τις μεταβλητές που πρέπει να ανασυρθούν ή να μετατραπούν σε τελικές.

Πλαισίωση με εκτελέσιμο μετασχηματισμό κώδικα

Χρησιμοποιήστε την επιλογή Πρωτογενής κώδικας > Πλαισίωση με ή πατήστε Alt+Shift+Z για να δείτε απευθείας το μενού.

Μπορείτε να προσθέσετε τα προσαρμοσμένα πρότυπά σας στη σελίδα προτιμήσεων Java > Λειτουργία επεξεργασίας > Πρότυπα. Το μόνο που χρειάζεται το πρότυπο είναι μια μεταβλητή ${line_selection}.

Νέες ταχείες επιδιορθώσεις

Έχουν προστεθεί ορισμένες νέες ταχείες επιδιορθώσεις, όπως για παράδειγμα:

  • επιδιόρθωση προσβάσεων αδιαμόρφωτου είδους

    Πρόταση διόρθωσης αδιαμόρφωτης πρόσβασης

    Η ταχεία επιδιόρθωση συλλέγει πληροφορίες από τις χρήσεις εντός του ίδιου αρχείου. Για μια λεπτομερέστερη ανάλυση, χρησιμοποιήστε τη βελτιστοποίηση δομής Συμπερασματική επαγωγή ορισμάτων γενικών ειδών.

  • προσθήκη γνωρίσματος σημείωσης που λείπει

    Ταχεία επιδιόρθωση για γνώρισμα σημείωσης που λείπει

  • προσθήκη νέου μέλους σημείωσης

    Ταχεία επιδιόρθωση για νέο μέλος σημείωσης

Υποστήριξη κατηγοριών

Οι κατηγορίες μπορούν να οριστούν σε σχόλια Javadoc για είδη, μεθόδους και πεδία με τη χρήση του προσδιοριστικού @category.

Κώδικας που χρησιμοποιεί κατηγορίες

Οι κατηγορίες εμφανίζονται στις προβολές "Διάρθρωση" και "Μέλη" και στην "Ταχεία διάρθρωση διάρθρωση". Το μενού της προβολής επιτρέπει την επιλογή των ορατών κατηγοριών.

Διάρθρωση που εμφανίζει κατηγορίες και φίλτρα κατηγοριών

Δυνατότητα σύμπτυξης όλων των μελών

Όταν είναι ενεργοποιημένη η σύμπτυξη, τα πεδία, οι λειτουργίες απόδοσης αρχικών τιμών και τα σχόλιά τους μπορούν να συμπτυχθούν με τον ίδιο τρόπο όπως οι μέθοδοι.

Συμπτυγμένες λειτουργίες απόδοσης αρχικών τιμών για πεδία

Υπάρχουν νέες εντολές σύμπτυξης κειμένου για τη σύμπτυξη όλων των σχολίων και των μελών και για την επαναφορά της δομής σύμπτυξης. Αυτές οι εντολές βρίσκονται στο μενού περιβάλλοντος Σύμπτυξη της λειτουργίας επεξεργασίας Java στον κατακόρυφο χάρακα.

Υποστήριξη χάρακα και διάρθρωσης για αρχεία Java εκτός του χώρου εργασίας

Η λειτουργία επεξεργασίας Java εμφανίζει κατακόρυφους χάρακες και η σελίδα "Διάρθρωση" καθώς και η "Ταχεία διάρθρωση" μπορούν να εμφανίζουν τη διάρθρωση εξωτερικών αρχείων Java και αρχείων Java από χώρους αποθήκευσης.

Υποστήριξη χάρακα

Μεταγλωττιστής Java

Συμβατότητα με Java SE 6.0

Η συμβατότητα με το Java SE 6.0 υποστηρίζεται πλήρως. Ειδικότερα, τα γνωρίσματα StackMapTable (ανατρέξτε στο JSR 202) δημιουργούνται σε αρχεία ".class" με προορισμό 1.6.

Ορισμός συμβατότητας με 6.0

Ανάλυση παραπομπής "null"

Ο μεταγλωττιστής Java μπορεί να εκτελέσει βασική ανάλυση παραπομπής "null" για τοπικές μεταβλητές.

Αυτή η προαιρετική διάγνωση μπορεί να ενεργοποιηθεί από τη σελίδα προτιμήσεων Άνοιγμα σελίδας προτιμήσεων σφαλμάτων/προειδοποιήσεων Java > Μεταγλωττιστής > Σφάλματα/προειδοποιήσεις χρησιμοποιώντας την προτίμηση Πιθανά προβλήματα προγραμματισμού > Παραπομπή null.

Λειτουργία επεξεργασίας Java με προειδοποίηση παραπομπής null

Σημειώστε ότι η ανάλυση είναι απλή και ευθυγραμμίζεται με καθορισμένους κανόνες αντιστοίχισης. Λαμβάνει υπόψη της περιπτώσεις όπου υπάρχει κάτι ύποπτο (π.χ., αν αργότερα εκτελεστεί σε ένα έλεγχο null) αντί να εμφανίσει μήνυμα προειδοποίησης για κάθε πιθανή περίπτωση.

Στην κατάσταση συμβατότητας με 5.0, οι προειδοποιήσεις παραπομπών "null" μπορούν να αποσιωπηθούν με τη χρήση του @SuppressWarnings("null").

Βελτιωμένη αποκατάσταση σύνταξης

Η εσωτερική λειτουργία ανάλυσης Java είναι περισσότερο ελαστική στα σφάλματα σύνταξης. Στο Eclipse 3.1, ένα σφάλμα σύνταξης θα απέτρεπε την εμφάνιση των επόμενων σφαλμάτων. Η λειτουργία ανάλυσης μπορεί να ανακάμψει από προτάσεις που περιέχουν σφάλματα και να συνεχίσει να εκτελεί περαιτέρω αναλύσεις.

Στο παράδειγμα που ακολουθεί, η μη έγκυρη παραπομπή στη μέθοδο bar() εντοπίζεται παρά το γεγονός ότι λείπει ένας χαρακτήρας ελληνικού ερωτηματικού από την προηγούμενη πρόταση.

Λειτουργία επεξεργασίας Java με αποκατάσταση σύνταξης

Για παράδειγμα, αυτό επιτρέπει σε βελτιστοποιήσεις δομής που επηρεάζουν μόνο ένα αρχείο να ανέχονται σφάλματα σύνταξης. Συνεπώς, είναι δυνατή η μετονομασία ή η εξαγωγή μιας τοπικής μεταβλητής στην αρχή μιας μεθόδου η οποία δεν έχει συνταχθεί ακόμα πλήρως.

Εξαγωγή τοπικής μεταβλητής σε ημιτελή μέθοδο

Αντιμετώπιση των προσαρμόσιμων σφαλμάτων ως μη ανεπανόρθωτων

Η επιλογή Αντιμετώπιση των προσαρμόσιμων σφαλμάτων ως ανεπανόρθωτων στη σελίδα προτιμήσεων Άνοιγμα σελίδας προτιμήσεων δόμησης Java > Μεταγλωττιστής > Δόμηση ελέγχει εάν ένα προσαρμόσιμο σφάλμα πρόκειται να θεωρείται ανεπανόρθωτο ή όχι. Αυτή η επιλογή είναι απενεργοποιημένη ως προεπιλογή.

Αν αυτή η επιλογή είναι απενεργοποιημένη, τότε ο μεταγλωττισμένος κώδικας μπορεί να εκτελεστεί παρόλο που υπάρχουν σφάλματα σε αυτόν.

Εντοπισμός περιττών προσδιοριστικών $NON-NLS$

Τα περιττά προσδιοριστικά $NON-NLS$ πλέον εντοπίζονται. Αναφέρεται κάποιο πρόβλημα αν ένα σχόλιο γραμμής αρχίζει με //$NON-NLS-x$ και δεν υπάρχουν αντίστοιχες σειρές χαρακτήρων στην ίδια γραμμή.

Η δημιουργία αναφορών μπορεί να ενεργοποιηθεί και να απενεργοποιηθεί με τη χρήση της ίδιας προτίμησης με αυτή για τον εντοπισμό των μη τοπικά προσαρμοσμένων σειρών χαρακτήρων. Μπορεί να οριστεί στη σελίδα προτιμήσεων Άνοιγμα σελίδας προτιμήσεων σφαλμάτων/προειδοποιήσεων Java > Μεταγλωττιστής > Σφάλματα/Προειδοποιήσεις με τη χρήση της προτίμησης Στυλ κώδικα > Σειρές χαρακτήρων χωρίς τοπική προσαρμογή (προσδιοριστικό $NON-NLS που λείπει ή δεν χρησιμοποιείται).

Λειτουργία επεξεργασίας Java με περιττό προσδιοριστικό NLS

Για να αφαιρέσετε τα περιττά προσδιοριστικά, χρησιμοποιήστε την ενέργεια "Ταχεία επιδιόρθωση" (Ctrl+1), ή Ctrl+1, Ctrl+Enter για να αφαιρέσετε όλα τα περιττά προσδιοριστικά σε μια μονάδα μεταγλώττισης.

Εντοπισμός χρήσης αδιαμόρφωτου είδους

Οι χρήσεις αδιαμόρφωτων ειδών μπορούν να εντοπιστούν. Ένα αδιαμόρφωτο είδος αποτελεί μια παραπομπή σε κάποιο γενικό είδος χωρίς κανένα όρισμα είδους (π.χ. το List αντί του List<Element>).

Αυτή η προαιρετική διάγνωση μπορεί να ενεργοποιηθεί ανεξάρτητα από τις μη επιλεγμένες λειτουργίες είδους στη σελίδα προτιμήσεων Άνοιγμα σελίδας προτιμήσεων σφαλμάτων/προειδοποιήσεων Java > Μεταγλωττιστής > Σφάλματα/Προειδοποιήσεις χρησιμοποιώντας την προτίμηση Γενικά είδη > Χρήση αδιαμόρφωτου είδους.

Λειτουργία επεξεργασίας Java με χρήση αδιαμόρφωτου είδους

Αυτή η προειδοποίηση μπορεί να αποσιωπηθεί προσθέτοντας το @SuppressWarnings("unchecked").

Επίσης, έχει υλοποιηθεί μια ταχεία επιδιόρθωση για βοήθεια στην επίλυση του προβλήματος χρήσης του αδιαμόρφωτου είδους.

Εντοπισμός αντιστοιχίσεων σε παραμέτρους μεθόδου

Η αντιστοίχιση σε παραμέτρους μεθόδου θεωρείται κακή πρακτική.

Για τον εντοπισμό και την αναφορά αυτών των αντιστοιχίσεων, ανοίξτε τη σελίδα προτιμήσεων Άνοιγμα σελίδας προτιμήσεων σφαλμάτων/προειδοποιήσεων Java > Μεταγλωττιστής > Σφάλματα/Προειδοποιήσεις και ενεργοποιήστε την προτίμηση Στυλ κώδικα > Αντιστοίχιση παραμέτρου.

Λειτουργία επεξεργασίας Java με προειδοποίηση αντιστοίχισης παραμέτρου

Εντοπισμός ετικετών που δεν χρησιμοποιούνται

Ο μεταγλωττιστής Java πλέον εντοπίζει ετικέτες προτάσεων που δεν χρησιμοποιούνται.

Αυτή η προαιρετική διάγνωση μπορεί να ενεργοποιηθεί από τη σελίδα προτιμήσεων Άνοιγμα σελίδας προτιμήσεων σφαλμάτων/προειδοποιήσεων Java > Μεταγλωττιστής > Σφάλματα/προειδοποιήσεις χρησιμοποιώντας την προτίμηση Μη απαραίτητος κώδικας > Μη χρησιμοποιημένη ετικέτα break/continue.

Λειτουργία επεξεργασίας Java με χρήση αδιαμόρφωτου είδους

Εντοπισμός αποτυχίας εναλλαγής πεζών/κεφαλαίων πρότασης "switch"

Ο μεταγλωττιστής Java μπορεί να εντοπίσει εάν έχουν καταχωρηθεί πεζά/κεφαλαία λόγω αποτυχίας προηγούμενης ρύθμισης πεζών/κεφαλαίων. Επιτρέπονται οι κενές ρυθμίσεις πεζών/κεφαλαίων.

Αυτή η προαιρετική διάγνωση μπορεί να ενεργοποιηθεί από τη σελίδα προτιμήσεων Άνοιγμα σελίδας προτιμήσεων σφαλμάτων/προειδοποιήσεων Java > Μεταγλωττιστής > Σφάλματα/προειδοποιήσεις χρησιμοποιώντας την προτίμηση Πιθανά προβλήματα προγραμματισμού > Παραπομπή null.

Λειτουργία επεξεργασίας Java με προειδοποίηση αποτυχίας

Έχει υλοποιηθεί μια ταχεία επιδιόρθωση για την προσθήκη πρότασης break στην προηγούμενη πρόταση.

Βελτιωμένη απόδοση για αρχεία ".jar" μεγάλου μεγέθους

Το όριο μεγέθους της εσωτερικής λανθάνουσας μνήμης του μοντέλου Java αποτελεί μια λειτουργία του μέγιστου μεγέθους σωρού (όρισμα VM -Xmx στις περισσότερες JVM) που αποδίδεται στο Java Virtual Machine το οποίο εκτελεί το Eclipse IDE.

Η αύξηση του μεγέθους σωρού επιφέρει εμφανή βελτίωση στην απόδοση όταν υπάρχουν αρχεία ".jar" μεγάλου μεγέθους στη διαδρομή κλάσεων δόμησης.

Επαναδημιουργία τροποποιημένων αρχείων ".class"

Το εργαλείο δόμησης Java μπορεί να επαναδημιουργήσει τροποποιημένα ή διαγραμμένα αρχεία ".class" στο φάκελο εξόδου με τη χρήση του αρχικού πρωτογενή κώδικα.

Μπορείτε να το ελέγξετε από τη σελίδα προτιμήσεων Άνοιγμα σελίδας προτιμήσεων δόμησης Java > Μεταγλωττιστής > Δόμηση χρησιμοποιώντας την προτίμηση Φάκελος εξόδου > Αναδόμηση αρχείων κλάσεων που τροποποιήθηκαν από άλλους.

Προβολή Javadoc και επεξηγηματικό κείμενο από το συνημμένο Javadoc

Η προβολή Javadoc και τα αναδυόμενα πλαίσια πληροφοριών του Javadoc εξάγουν πληροφορίες από το συνημμένο Javadoc για βιβλιοθήκες στις οποίες δεν έχει προσαρτηθεί πρωτογενής κώδικας.

Εργαλεία JUnit

Υποστήριξη JUnit 4

Η υποστήριξη του JUnit έχε ενημερωθεί έτσι ώστε να εκτελεί και να συντάσσει δοκιμές JUnit 4. Ανατρέξτε στο δικτυακό τόπο www.junit.org για περισσότερες πληροφορίες σχετικά με το JUnit 4.

  • χρησιμοποιήστε τον οδηγό Δημιουργία σεναρίου δοκιμής JUnit για τη δημιουργία κλάσης δοκιμής JUnit 4:
    Υποστήριξη JUnit 4 στον οδηγό δημιουργίας σεναρίου δοκιμής JUnit
  • χρησιμοποιήστε τη βιβλιοθήκη JUnit που παρέχεται για την προσθήκη της διαδρομής δόμησης
    Προσθήκη βιβλιοθήκης JUnit 4 με ταχεία επιδιόρθωση
  • εκκινήστε τις δοκιμές JUnit 4 κανονικά με την ενέργεια Εκτέλεση ως JUnit
  • αγνοήστε δοκιμές προσθέτοντάς τους το προσδιοριστικό @Ignore

Ιστορικό προβολής "JUnit"

Η προβολή "JUnit" μπορεί να χειριστεί πολλαπλές ταυτόχρονες εκτελέσεις δοκιμών. Μπορείτε να πραγματοποιήσετε εναλλαγή μεταξύ των ενεργών και των πρόσφατων εκτελέσεων δοκιμών χρησιμοποιώντας το νέο ιστορικό. Οι δοκιμές μπορούν να εκτελεστούν εκ νέου από το ιστορικό χωρίς τη διακοπή των δοκιμών που εκτελούνται ήδη.

Ιστορικό JUnit

Αυτό ισχύει τόσο για το JUnit 3 όσο και για το JUnit 4.

Λειτουργία εντοπισμού και διόρθωσης σφαλμάτων Java
Περιβάλλοντα εκτέλεσης

Ένα περιβάλλον εκτέλεσης περιγράφει τις δυνατότητες ενός περιβάλλοντος εκτέλεσης, για παράδειγμα του J2SE-1.4. Μπορείτε να προσδιορίσετε τα JRE που χρησιμοποιούνται για την εκτέλεση, τον εντοπισμό και διόρθωση σφαλμάτων και τη δόμηση βάσει αναφορών σε περιβάλλον εκτέλεσης. Η νέα σελίδα προτιμήσεων Άνοιγμα σελίδας προτιμήσεων περιβάλλοντος εκτέλεσης Java > Εγκατεστημένα JRE > Περιβάλλοντα εκτέλεσης εμφανίζει τα εγκατεστημένα JRE στο χώρο εργασίας σας τα οποία είναι συμβατά με κάθε περιβάλλον εκτέλεσης. Τα JRE που πληρούν τις συγκεκριμένες απαιτήσεις ενός περιβάλλοντος εκτέλεσης εμφανίζονται σε έντονη γραφή και τα JRE τα οποία υπερκαλύπτουν τις απαιτήσεις ενός περιβάλλοντος εμφανίζονται με την προεπιλεγμένη γραμματοσειρά. Όταν περισσότερα από ένα JRE είναι συμβατά με κάποιο περιβάλλον εκτέλεσης, μπορείτε να επιλέξετε ένα προεπιλεγμένο JRE για χρήση με αυτό το περιβάλλον εκτέλεσης επιλέγοντάς το.

Σελίδα προτιμήσεων περιβάλλοντος εκτέλεσης

Μια διαδρομή δόμησης ή οι ρυθμίσεις εκκίνησης που παραπέμπουν σε περιβάλλον εκτέλεσης έχουν μεγαλύτερη φορητότητα από αυτές που παραπέμπουν σε κάποιο ρητό JRE καθώς το περιβάλλον εκτέλεσης ενός JRE μπορεί να αναλυθεί ανεξαρτήτως του ονόματός του. Χρησιμοποιήστε την καρτέλα "JRE" ή τον οδηγό τροποποίησης βιβλιοθήκης για να προσδιορίσετε ένα περιβάλλον εκτέλεσης για την εκτέλεση και τη δόμηση.

Καρτέλα "JRE" στο πλαίσιο διαλόγου ρυθμίσεων εκκίνησης

Μεταβλητή εκκίνησης ιδιοτήτων συστήματος

Μια νέα μεταβλητή εκκίνησης επιτρέπει το δυναμικό προσδιορισμό των ιδιοτήτων του συστήματος ως πρόγραμμα Java και ορίσματα VM από το περιβάλλον εκτέλεσης του Eclipse. Η μεταβλητή αποδέχεται ένα μοναδικό όρισμα το οποίο αποτελεί το όνομα της ιδιότητας συστήματος που αναλύεται κατά το χρόνο εκτέλεσης.

Για παράδειγμα, μπορεί να γίνει παραπομπή στην ιδιότητα συστήματος java.home με το ${system_property:java.home}.

Καρτέλα "Ορίσματα" στο πλαίσιο διαλόγου ρυθμίσεων εκκίνησης

Υποστήριξη αποτίμησης για πίνακες

Η αποτίμηση και η αυτόματη συμπλήρωση περιεχομένου υποστηρίζονται για πίνακες Java. Χρησιμοποιήστε το this για παραπομπή στον επιλεγμένο πίνακα.

Αυτόματη συμπλήρωση κώδικα στην προβολή μεταβλητών

Ομάδες νημάτων Java

Μπορείτε να εμφανίσετε ομάδες νημάτων στην προβολή "Εντοπισμός και διόρθωση σφαλμάτων" χρησιμοποιώντας την επιλογή Εμφάνιση ομάδων νημάτων στο μενού της προβολής.

Ενεργοποίηση ομάδων νημάτων στην προβολή εντοπισμού και διόρθωσης σφαλμάτων

Εξαγμένες καταχωρήσεις διαδρομής κλάσεων χρόνου εκτέλεσης

Μπορεί να γίνει προσαρμογή μιας διαδρομής κλάσεων χρόνου εκτέλεσης ώστε να περιλαμβάνει μόνο τις εξαγμένες καταχωρήσεις από τη διαδρομή δόμησης. Ως προεπιλογή, μια διαδρομή κλάσεων χρόνου εκτέλεσης περιλαμβάνει όλες τις καταχωρήσεις (εξαγμένες και μη εξαγμένες).

Από την καρτέλα Διαδρομή κλάσεων επιλέξτε την προεπιλεγμένη καταχώρηση και χρησιμοποιήστε το κουμπί Τροποποίηση... για να ρυθμίσετε την επιλογή.

Καρτέλα "Διαδρομή κλάσεων" στο πλαίσιο διαλόγου ρυθμίσεων εκκίνησης

Πλαίσιο διαλόγου "Τροποποίηση διαδρομής κλάσεων χρόνου εκτέλεσης"

"Αναστολή νήματος" και "Αναστολή VM"

Έχει προστεθεί μια επιλογή στη σελίδα προτιμήσεων Άνοιγμα σελίδας προτιμήσεων εντοπισμού και διόρθωσης σφαλμάτων Java > Εντοπισμός και διόρθωση σφαλμάτων για τον έλεγχο της αναστολής ενός μοναδικού νήματος ή ολόκληρης της VM από τα πρόσφατα δημιουργημένα σημεία διακοπής.

Σελίδα προτιμήσεων "Εντοπισμός και διόρθωση σφαλμάτων"

Διάφορα

Ένδειξη είδους Java

Ενεργοποιήστε το τετραγωνίδιο επιλογής Ένδειξη είδους Java στη σελίδα προτιμήσεων Άνοιγμα σελίδας προτιμήσεων διακριτικών Γενικά > Εμφάνιση > Διακριτικό ετικέτας για να βρείτε ποιο είναι το πρώτο είδος σε μια μονάδα μεταγλώττισης ή ένα αρχείο κλάσης. Εμφανίζεται ένα διακριτικό για τις διεπαφές, τις σημειώσεις και τις απαριθμήσεις, ενώ μια συνήθης κλάση δεν φέρει διακριτικό.

Διακριτικό ετικέτας ένδειξης είδους

Εύρεση μη έγκυρων τοπικά προσαρμοσμένων σειρών χαρακτήρων

Μια νέα ενέργεια μπορεί να πραγματοποιήσει αναζήτηση για μη έγκυρες τοπικά προσαρμοσμένες σειρές χαρακτήρων. Η αναζήτηση αναφέρει κλειδιά που λείπουν, δεν χρησιμοποιούνται ή είναι διπλότυπα.

Ενέργεια εύρεσης μη έγκυρων τοπικά προσαρμοσμένων σειρών χαρακτήρων

Για να ξεκινήσετε την αναζήτηση, επιλέξτε ένα αρχείο ιδιοτήτων, ένα πακέτο ή ένα ολόκληρο έργο και χρησιμοποιήστε την ενέργεια Πρωτογενής κώδικας > Εύρεση μη έγκυρων τοπικά προσαρμοσμένων σειρών χαρακτήρων

Βελτιωμένη υποστήριξη για το μηχανισμό τοπικής προσαρμογής σειρών χαρακτήρων του Eclipse

Ο μηχανισμός τοπικής προσαρμογής σειρών χαρακτήρων του Eclipse διαθέτει το ίδιο είδος υποστήριξης με την παραδοσιακή τοπική προσαρμογή σειρών χαρακτήρων. Η συσχετισμένη τοπικά προσαρμοσμένη τιμή εμφανίζεται σε ένα αναδυόμενο πλαίσιο πληροφοριών, όταν παραμένετε πάνω από ένα κλειδί για μια τοπικά προσαρμοσμένη σειρά χαρακτήρων στη λειτουργία επεξεργασίας Java.

Αναδυόμενο πλαίσιο πληροφοριών NLS

Επιλέξτε Ctrl+Πάτημα του κουμπιού του ποντικιού πάνω στο κλειδί για να μεταβείτε απευθείας στην καταχώρηση στο αντίστοιχο αρχείο ιδιοτήτων.Στη λειτουργία επεξεργασίας αρχείου ιδιοτήτων μπορείτε να χρησιμοποιήσετε το Ctrl+Πάτημα για να βρείτε που χρησιμοποιείτε το κλειδί στον κώδικα.

Δημιουργία είδους από παράδειγμα τμήματος κώδικα

Μπορείτε να επικολλήσετε τμήμα κώδικα που περιέχει ένα είδος Java απευθείας σε ένα φάκελο πακέτου ή πρωτογενούς κώδικα για τη δημιουργία νέας μονάδας μεταγλώττισης. Για παράδειγμα, επιλέξτε και αντιγράψτε αυτόν τον πρωτογενή κώδικα
package pack;
   public class HelloWorld {
      public static void main(String[] args) {
        System.out.println("Hello World");
    }
}
και στη συνέχεια επιλέξτε ένα φάκελο πρωτογενή κώδικα στην "Εξερεύνηση πακέτων" και χρησιμοποιήστε το συνδυασμό πλήκτρων Ctrl+V (Τροποποίηση > Επικόλληση). Με αυτόν τον τρόπο δημιουργείται αυτόματα ένα νέο πακέτο 'pack' και το αρχείο 'HelloWorld.java' με το περιεχόμενο που αντιγράφηκε.

Δημιουργία μεθόδων hashCode() και equals()

Μπορεί να χρησιμοποιηθεί μια νέα ενέργεια για τη δημιουργία των μεθόδων hashCode() και equals(). Μπορείτε να επιλέξετε τα πεδία στα οποία πρέπει να βασίζεται η υλοποίηση.

Οδηγός δημιουργίας μεθόδων hash και equals

Για να καλέσετε αυτή την ενέργεια, επιλέξτε ένα είδος και χρησιμοποιήστε την επιλογή Πρωτογενής κώδικας > Δημιουργία hashCode() και equals()...

Μορφοποίηση κώδικα από τη γραμμή εντολών

Είναι δυνατή η μορφοποίηση πρωτογενούς κώδικα χωρίς την εκκίνηση του περιβάλλοντος χρήστη του Eclipse χρησιμοποιώντας τη νέα εφαρμογή λειτουργίας μορφοποίησης χωρίς γραφικό περιβάλλον. Η λειτουργία μορφοποίησης από τη γραμμή εντολών λειτουργεί όπως μια τυπική εφαρμογή του Eclipse.

Με την ακόλουθη εντολή θα πραγματοποιηθεί μορφοποίηση των αρχείων πρωτογενούς κώδικα στο φάκελο src με τις επιλογές που προσδιορίζονται στο αρχείο config.prefs:

eclipse -application org.eclipse.jdt.core.JavaCodeFormatter -config d:/config.prefs c:/src

Για περισσότερες λεπτομέρειες, ανατρέξτε στην ενότητα Χρήση της εφαρμογής μορφοποίησης.

Υποστήριξη για επεκτάσεις Java

Υποστηρίζονται τα αρχεία με επέκταση αρχείου διαφορετική από .java που περιέχουν απλό κώδικα Java. Μπορεί να προστεθεί μια επέκταση Java χρησιμοποιώντας τη σελίδα προτιμήσεων Άνοιγμα σελίδας προτιμήσεων είδους περιεχομένου Γενικά > Είδος περιεχομένου (πληκτρολογήστε Κείμενο > Αρχείο πρωτογενούς κώδικα Java).

Εξερεύνηση πακέτων με το 'Y.abc' ως μονάδα μεταγλώττισης