2012-07-09 14 views
6

Edit: the Derby community'a göre Eclipse eklentisi korunmaz ve Derby projesi boyunca otomatik olarak oluşturulmaz.Apache Derby Eclipse eklentisi nereye gitti?

Ama hala bu eklentiyi kullanan var mı? Çünkü eğer öyleyse, gerçek yapıtları yayınladığı bir yer var mı - Eclipse Juno'nun altında (umarız)? Veya, eğer bu gerçek bir çıkmazsa, alternatifler nelerdir?


  • jdk1.7.0_03
  • Java EE Geliştiriciler için
  • Eclipse IDE (Win32) sürümü Juno kullanmak orijinal sorun

    (build den 2012/06/14)

  • derby-core-plugin 10.8.2 ve -ui-eklenti 1.1.3 (eclipse p olmadığı için > "Apache Derby" - - en son sürümü 10.9.1.0) Yeni bir derbi niteliği eklemek çalışırken
    (java projesi üzerinde sağ tıklayın

Sorun için lugin> "Apache Derby doğayı Ekle") Sadece aşağıdaki iletiyi alıyorum:

Apache Derby Ui Plug-in 
Error adding Derby jars to the project: 
org.eclipse.ui.internal.WorkbenchWindow cannot be cast to 
org.eclipse.jface.window.ApplicationWindow 

Herhangi bir fikir?

cevap

4

Eclipse için Derby UI eklentisi birkaç yıldan beri korunmadı, inanıyorum ki, düzenli Derby işlemcilerin hiçbiri bu eklentiyi kullanmıyor ve bunu sürdürmek için topluluktan hiç gönüllü yok. Bu yüzden sadece Eclipse'nin eski sürümleriyle çalışacağını düşünüyorum.

Güncel Eclipse ile çalışmasını sağlamak için bugüne kadar getirmenin çok fazla çalışmadığından şüpheleniyorum. Bu işlevsellikle ilgileniyorsanız, Derby topluluğunun sizden duymayı çok seveceğinden eminim!

Ayrıca bakınız: Is it possible to use derby from apache in Eclipse now that they stopped developing the derby plugin for Eclipse?

+1

Derby topluluğuyla ilgili ipucu için teşekkürler, şimdi faydalı bir şey buldum - bunun beklediğim sonuç olmasa da ... [link] (https://issues.apache.org/jira/browse/DERBY-5272) – Trainbird

5

Apache Derby db-derby-10.9.1.0-src/Eclipse 4.2.1 (Juno)/Java 7

düzeltme çeşit. Daha fazla araştırmaya ihtiyaç var ama bu işe yarayacak.

Referanslar:
db-derby-10.9.1.0-src/BUILDING.html
db-derby-10.8.1.2-src/plugins/Tutulma/Benioku.txt

indirin Apache Derby kaynak zip .
Zip dosyasını çıkarın.
Kaynak dizini değiştirin.
db-derby-10.9.1.0-src

Aşağıdaki karınca hedeflerini gerçekleştirin.
karınca clobber -quiet
karınca -quiet buildsource
karınca -quiet buildjars

çekirdek eklentisi oluşturun. Artık db-derby-10.9.1.0-src/kavanoz/aklı başında dizininde bir derby_core_plugin_10.9.1.zip dosyası olmalıdır


karınca eklentisi.

Not: Eclipse IDE'niz çalışmıyor olmalıdır. Yukarıdaki karınca eklentisi görevi tarafından oluşturulan derby çekirdek eklentisini ayıklayın ve içeriği Eclipse eklentileri dizininize kopyalayın.

Eclipse'yi çalıştırın.

Kaynak ağdaki org.apache.derby.ui dosyasını içe aktarın.
(İthalat> Genel> Workspace içine Projeler Mevcut),

Açık plugin.xml dosyası Genel Bakış sekmesinde

en 1.1.4 diyelim sürüm numarasını yükseltmek.

Dosyayı kaydedin.

böcek (ler) ... lütfen
1.) paket org.apache.derby.ui.popup.actions.AddDerbyNature.java
2.) paket org.apache.derby.ui.popup vardır .actions.RemoveDerbyNature.java

Bu iki birimde .setStatus yöntemi çağrılır.


Not: (ApplicationWindow ait javadoc itibaren)

geçersiz org.eclipse.jface.window.ApplicationWindow.setStatus (Dize mesajı)

belirler veya bu görüntülenen mesajı temizler

Pencerenin durum satırı (eğer> bir tane varsa). Pencerenin bir durum satırı yoksa, bu yöntemin bir etkisi yoktur.

Parametreler:
mesajı durum mesajı veya boş o

Öyleyse IDE bir durum satırı yoktur varsayalım temizlemek için, bu nedenle bu çağrı Java doc göre hiçbir etkisi olmaz.

Commenting out these method calls from: 
AddDerbyNature.java 
//((ApplicationWindow) window).setStatus(Messages.ADDING_NATURE); 
//((ApplicationWindow) window).setStatus(Messages.DERBY_NATURE_ADDED); 

RemoveDerbyNature.java 
//((ApplicationWindow)window).setStatus(Messages.REMOVING_NATURE); 
//((ApplicationWindow)window).setStatus(Messages.DERBY_NATURE_REMOVED); 

Testi (ler):
çalıştırın olarak Eclipse Uygulaması.

Bir proje oluşturun. Belki buna "org.apache.derby.ui.test" diyoruz.

Sağa Tıklayın Proje/Seç Apache Ekle Derby doğa
Hata yok.

Sağdaki Projeye tıklayın/Seç Çıkar Apache Derby yapısı
Hata yok.

Diğer menü öğelerini sınamak için doğayı tekrar ekleyin.
Sağ Sağ proje/Başlat Derby Ağ Sunucusu
Hata tıklayın Apache Derby doğayı

Ekle seçeneğini/projeyi seçin, sunucu başlatılmıştır.

Konsol günlüğünden ... Sun Oca 27 17:51:29 EST 2013: Temel sunucu güvenlik ilkesi kullanılarak yüklenen güvenlik yöneticisi. Güneş 27 Ocak 17:51:29 EST 2013: Apache Derby Ağ Sunucusu - 10.9.1.0 - (sürüm bilgisi olmayan dizin) başlayan ve bağlantı noktasında bağlantıları kabul etmeye hazır 1527

Not: emin değil sürüm bilgisi olmayan dizini mesajı

ne anlama geldiğini

Sağa Tıklayın Proje/Seç Durdur Derby Ağ Sunucusu
Hata yok, sunucu durduruldu.
Güneş 27 Ocak 17:53:32 EST 2013: Apache Derby Ağ Sunucusu - 10.9.1.0 - (sürüm bilgisi olmayan dizini) kapatma

Başlangıç ​​geri sunucu ...
Sağ tıklayın proje/Başlat Derby Ağ Sunucusu

Bir sql klasörü oluşturun.
bir test.sql dosyası oluştur

Test sql dosyam.

connect 'jdbc:derby://localhost:1527/TESTDB;create=true;user=test;password=test;'; 
-- drop User Indexes - ignore error if first time creating 
drop index UserNameIdx1; 
-- drop the table if it exists - ignore error if first time creating 
drop table TEST_USER; 
-- create the table 
create table TEST_USER ( 
    ID integer generated by default as identity, 
    USER_NAME varchar(255) not null, 
    FIRST_NAME varchar(255), 
    LAST_NAME varchar(255), 
    PASSWORD varchar(255), 
    ENABLED integer, 
    CREATED_STAMP timestamp, 
    CREATED_TX_STAMP timestamp, 
    LAST_UPDATED_STAMP timestamp, 
    LAST_UPDATED_TX_STAMP timestamp, 
    constraint TEST_USER_PK primary key (ID) 
); 
-- insert some data -- oops --- will mess with the ID generator, see the alter table restart line below. 
insert into TEST_USER values(0, 'admin','admin','admin','admin',1,'2013-01-18 12:00:00.000','2013-01-18 12:00:00.000','2013-01-18 12:00:00.000','2013-01-18 12:00:00.000'); 
-- make the USER_NAME unique 
create unique index UserNameIdx1 on TEST_USER(USER_NAME); 
-- reset the generator 
alter table TEST_USER alter column ID restart with 1; 

sağ dosyasını tıklayın> Apache Derby> Çalıştır SQL Script 'ij'

Refesh projeleri çalışma alanı kullanarak, artık TESTDB klasör olmalıdır.

Veritabanı oluşturuldu. Tamam.

Bir zip dosyası oluşturun.

Sağ Gelişimi Plug-> Deplyable eklentiler ve parçaları üzerinde İhracat

tıklayın> projeyi tıklayın.
Hedef Tab
Arşiv dosyası
/derby_ui_plugin_1.1.4-fix.zip
Seçenekler sekmesi
bireysel JAR arşivleri gibi seçimini kaldırın Paketi eklentileri

tıklayın kaplama.

Test örneğini kapatın/kapatın.
Çıkış Eclipse.

Yukarıda oluşturduğunuz zip dosyasını ayıklayın.

İçeriğini Eclipse (Juno) eklentileri dizininize plugin dizinine kopyalayın.

Yeniden Başlatma Eclipse. Yeni bir proje oluştur.

Projelerinize bir Apache Derby (10.9.1) yapısı yükleyebilmeniz gerekir.

Not: Bunu Java 7 ile oluşturduysanız, daha düşük bir JVM sürümü için çalışmasını beklemeyin.

+0

Şimdi, bu biraz bir çözümdür. Bunu benimle paylaştığınız için teşekkürler, tekrar ihtiyacım olursa bunu deneyeceğim;) – Trainbird

+0

Teşekkür ederim, bu benim için de Derby 10.10.1.1 w/Eclipse 4.3 ve Java 7'de benim için çalıştı. "Eclipse Uygulaması olarak çalıştırılmak için" PDE - Plug-in Development Environment'ı kurmak gerekiyordu. Söylemeye gerek olmayan bir şey olabilir, ama bir süre (ve bazı hayal kırıklıklarını) anlamaya karar verdim, bu yüzden mesajınıza ekleyebileceğimi düşündüm. – NigoroJr