Oct 9, 2007

Συνύπαρξη (coexistence) JDeveloper 10g και JDeveloper 11g

Το παρόν άρθρο απευθύνεται κατά κύριο λόγο σε εκείνους που χρησιμοποιούν JDeveloper στο Linux. Ήδη βρίσκεται διαθέσιμη η έκδοση Technology Preview 2 του JDeveloper 11g (http://otn.oracle.com/products/jdev), που περιλαμβάνει εξαιρετικά νέα χαρακτηριστικά, όπως τα ADF Faces Rich Client components για τη δημιουργία ισχυρών, πλούσιων interfaces βασισμένων σε AJAX, σημαντικές βελτιώσεις στα ADF BC (υποστήριξη LOV, Groovy για validations, κ.α.), Javascript debugging, αυτόνομο profiling σε Linux (επιτέλους!) και πολλά άλλα. Φυσικά αναπόφευκτα μπαίνει το ερώτημα για το αν κάποιος θα προχωρήσει στο 11g και αν θα πρέπει μεταφέρει όλα τα project του εκεί. Προτίμησα, μια πιο υβριδική λύση: να κρατήσω τα projects μου στον 10.1.3 αλλά ταυτόχρονα να αρχίσω τον πειραματισμό με το 11g.

Για όσους έχουν κάνει εγκατάσταση του JDeveloper στο Linux, τα πράγματα είναι λίγο-πολύ γνωστά: εγκαθιστούν το software σε ένα mount point (π.χ. /opt) και έπειτα δημιουργείται ένα directory στο home του χρήστη (το default είναι το jdevhome), με τις ρυθμίσεις του, τα software updates που έχει εγκαταστήσει κ.ο.κ. Αυτό αποτελεί άμεση απόρροια του multiuser περιβάλλοντος του Linux. Αντίθετα, στα Windows, το JDeveloper directory περιέχει όλες τις ρυθμίσεις του χρήστη που εκτελεί το πρόγραμμα. Από την έκδοση 11g στα Windows, παρατήρησα πως εγγράφονται δεδομένα και στον κατάλογο Document and Settings για κάθε χρήστη που χρησιμοποιεί τον JDeveloper, ξεπερνώντας αυτό το ζήτημα.

Μιλώντας όμως για το Linux, έχουμε να αντιμετωπίσουμε δυο ζητήματα. Αφενός της εγκατάστασης του 11g χωρίς να επηρεαστούν οι ρυθμίσεις που ήδη υπάρχουν, και αφετέρου της "καθαρής απεγκατάστασης" ώστε στην περίπτωση που θέλουμε να αφαιρέσουμε τον 11g από το σύστημά μας, να μπορούμε να το κάνουμε εύκολα και διακριτά.

Το default directory το οποίο δημιουργείται σε κάθε χρήστη είναι το /home/user/jdevhome. Αυτή η ρύθμιση βρίσκεται αποθηκευμένη στο αρχείο $JDEV11_HOME/jdev/bin/jdev και στο οποίο αρκεί να προσθέσουμε στο κατάλληλο σημείο τις γραμμές:

JDEV_USER_DIR=$HOME/jdev11
export JDEV_USER_DIR


Αυτό σημαίνει, πως οι ρυθμίσεις του 11g θα αποθηκεύονται σε ένα ειδικό directory στο home του χρήστη που θα ονομάζεται jdev11. Καλό θα είναι αυτό το directory, ακόμα και κενό, να προϋπάρχει. Με το άνοιγμα του JDeveloper, η εικόνα αυτού του καταλόγου θα έχει ως εξής:

Από εδώ και στο εξής, οι ρυθμίσεις του 11g θα βρίσκονται σε αυτό το directory. Και αν στο μέλλον θελήσουμε να αφαιρέσουμε τον 11g, τότε θα χρειαστεί να σβήσουμε το $JDEV11_HOME και αυτόν τον φάκελο, δίχως να επηρεάσουμε το JDeveloper 10g περιβάλλον μας.

No comments: