12 Şubat 2013 Salı

Sakai İşbirliği ve Öğrenme Ortamı Derleme, Tomcat Deploy, Tomcat Başlatma, Sakai Admin Sayfası

Sakai İşbirliği ve Öğrenme Ortamı (CLE) uygulamasının kaynak kodlardan derlenmesi, tomcat'e deploy, tomcat'in başlatılması ve sakai işbirliği ve öğrenme ortamı yönetici sayfasına giriş videosu aşağıda görülmektedir. Derleme ve deploy süreci donanımıza ve internet bağlantı hızınıza bağlı olarak değişmekle birlikte 20-30 dakika civarındadır. Video önemli noktaları içine alacak şekilde kısaltılmıştır.
Sakai İşbirliği ve Öğrenme Ortamı uygulamasının kaynak kodlardan derlenmesi ve Tomcat deploy işlemi aşağıdaki komutla başlatılmıştır:

mvn clean install -Dmaven.test.skip=true sakai:deploy -Dmaven.tomcat.home=C:\sakaiserver\tomcat
Bundan sonraki yayınlarda sakai işbirliği ve öğrenme ortamı yapılandırılması, yönetimi ve eklenmek istenen diğer modüllerin sakai işbirlği ve öğrenme ortamına eklenme ve yerelleştirilmelerinin (sakai localizaiton / sakai yerelleştirme) nasıl yapılacağı konularına değinilecektir.

Sakai İşbirliği ve Öğrenme Ortamı Kurulum - Tomcat deployDirectory Hata Çözümü

Sakai İşbirliği ve Öğrenme Ortamı kurulumunun son aşaması olan Tomcat uygulama sunucusuna Deploy işlemi komut istemi penceresinden mvn sakai:deploy komutu ile yapılır.
Deploy esnasında Tomcat ev klasör yolu (CATALINA_HOME, Tomcat kurulum klasörü) yapılandırma veya POM dosyaları vasıtasıyla bulunamazsa inşa başarısız (Build Failure) olur. Hatanın sebebi deployDirectory parametresinin kayıp ya da geçersiz olmasıdır.
Bu hatayı düzeltmek için Tomcat ev klasör yolu (CATALINA_HOME, Tomcat kurulum klasörü) mvn komutunda Tomcat ev klasör yolu verilmesi hatayı çözecektir.

mvn sakai:deploy -Dmaven.tomcat.home=C:\sakaiserver\tomcat


Hatayı düzeltmenin bir diğer yolu da deployDirectory parametre değerinin Tomcat ev klasör yolunu gösterecek şekilde yeniden yapılandırılmasıdır. Bunun için C:\sakaiserver\sakai-src\master\POM.xml dosyası text düzenleyicide açılır.


Yaklaşık olarak 1000. satır yakınlarında "<deployDirectory>${maven.tomcat.home}</deployDirectory>" ifadesi Tomcat'in ev klasör yolu "<deployDirectory>C:\sakaiserver\tomcat</deployDirectory>" ile değiştirilir.


Daha sonra mvn sakai:deploy komutu ile Sakai İÖO Tomcat'e deploy edilmiş olur.

11 Şubat 2013 Pazartesi

Sakai İşbirliği ve Öğrenme Ortamı Kurulum - Başarısız Test Hatası - There Are Test Failure

Sakai İşbirliği ve Öğrenme Ortamının Maven komutu "mvn clean install" ile derlenmesi esnasında aşağıdaki resimde görüldüğü gibi bir "There Are Test Failure" hatası var ise derleme esnasındaki TEST'leri şu komutla atlayabilirsiniz.


mvn clean install -Dmaven.test.skip=true



Sakai İşbirliği ve Öğrenme Ortamı Kurulum - Derleme Hatası / Sakai build failure - Sistem Kaynakları Yetersiz / The system is out of resources

Sakai İşbirliği ve Öğrenme Ortamını kaynak kodlarından derlerken derleme işleminin bir yerinde aşağıdaki hatayı alabilirsiniz.

The system is out of resources.(org.apache.maven.BuildFailureException:
Compilation failure Failure executing javac, but could not parse the error:  
The system is out of resources.) 

Bu hatayı gidermek ve derlemeyi tamamlamak için yapılması gereken, kılavuzda belirtilen MAVEN_OPTS başlangıç değerlerini sisteminiz kaynaklarına bağlı olarak tekrar düzenlemektir.

MAVEN_OPTS=-Xms1024m -Xmx1024m -XX:PermSize=128m -XX:MaxPermSize=512m
 
Kılavuzda belirtilen başlangıç ayarlarını yukarıdaki şekilde değiştirmek ve Komut İstemi penceresini tekrar başlatarak kaynak kodu derlemek sorunu çözecektir.

Sakai İşbirliği ve Öğrenme Ortamı Kurulumunda Windows Ortam Değişkenleri

https://confluence.sakaiproject.org/display/BOOT/Development+Environment+Setup+Walkthrough adresindeki kurulum kılavuzuna bağlı olarak Sakai İşbirliği ve Öğrenme Ortamının windows işletim sistemine kurulumunda yaratılması gereken sistem ortam değişkenleri ve almaları gerekli değerler aşağıdadır.

JAVA_HOME="C:\sakaiserver\Java\jdk1.7.0_13"
JAVA_OPTS"-server -Xmx1028m -XX:MaxPermSize=320m -Djava.awt.headless=true -Dcom.sun.management.jmxremote -Dsun.lang.ClassLoader.allowArraySyntax=true -Dorg.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING=false"
MAVEN2_HOME="C:\sakaiserver\Java\apache-maven-3.0.4"
MAVEN_OPTS="-Xms128m -Xmx796m -XX:PermSize=64m -XX:MaxPermSize=172m"
SUBVERSION_HOME="C:\sakaiserver\CollabNet\Subversion Client"
CATALINA_HOME="C:\sakaiserver\tomcat"

Ayrıca PATH ortam değişkenine de şu eklemenin yapılması gereklidir: ; %JAVA_HOME%\bin; %MAVEN2_HOME%\bin; %SUBVERSION_HOME%; %CATALINA_HOME%\bin

Sakai Kurulum 5/5 - SAKAI Kaynak Kodunun Subversion İle İndirilmesi ve Maven İle Derlenmesi

SAKAI İşbirliği ve Öğrenme Ortamı (CLE) kaynak kodunun Subversion ile indirilmesinin ve maven ile derlenmesinin anlatıldığı türkçe belgeye https://docs.google.com/file/d/0Bxb4XSuJ0402Vl8ydENfWm5MVU0/edit?usp=sharing bağlantısından erişilebilir.

Sakai Kurulum 4/5 - Tomcat Kurulum ve SAKAI İçin Yapılandırılması

Tomcat Kurulumu ve SAKAI İşbirliği ve Öğrenme Ortamı İçin Yapılandırılmasının ve ilgili ortam değişkenlerinin nasıl yaratılacağının anlatıldığı Türkçe belgeye https://docs.google.com/file/d/0Bxb4XSuJ0402OFhObVJIMy1RUms/edit?usp=sharing bağlantısından erişilebilir.

Not: Videoda 
"common_loader=..." ile başlayan satıra 
,${catalina.base}/common/classes/,${catalina.base}/common/lib/*.jar
"shared.loader=..." ile başlayan satıra
${catalina.base}/shared/classes/,${catalina.base}/shared/lib/*.jar
"server.loader=..." ile başlayan satıra da
${catalina.base}/server/classes/,${catalina.base}/server/lib/*.jar
ifadelerinin eklenmesi unutulmamalıdır.


Sakai Kurulum 3/5 - Maven ve Subversion Kurulumu

Sakai İşbirliği ve Öğrenme Ortamı için gerekli Maven ve Subversion Kurulumunun, ilgili ortam değişkenlerinin nasıl yaratılacağının anlatıldığı türkçe belgeye https://docs.google.com/file/d/0Bxb4XSuJ0402dVpSbzAzOVVIV2M/edit?usp=sharing bağlantısından erişilebilir.

Sakai Kurulum 2/5 - MySQL Servis Ayarları, Sakai Veritabanı ve Kullanıcısının Yaratılması

my.ini dosyası yapılandırması. MySQL servisinin durdurulup başlatılması ve Sakai İşbirliği ve Öğrenme Ortamı için gerekli veritabanı ve kullanıcısının yaratılması ile ilgili Türkçe belgeye https://docs.google.com/file/d/0Bxb4XSuJ0402NDdReGpoYTVOQlk/edit?usp=sharing bağlantısından erişilebilir.

Sakai Kurulum 1/5 - Java ve MySQL Kurulumu

Sakai İşbirliği ve Öğrenme Ortamının temel gereksinimi JDK ve MySQL uygulamalarının kurulumunun anlatıldığı türkçe belgeye https://docs.google.com/file/d/0Bxb4XSuJ0402UEszYVZPZ2wzYTA/edit?usp=sharing bağlantısından erişilebilir.

7 Şubat 2013 Perşembe

Sakai Geliştirme İpuçları

Sakai vakfı ve Sakai projesi için ana web sitesi:

http://www.sakaiproject.org/ web sitesinde; Yaklaşan Sakai konferansları ve diğer Sakai bağlantılı haberler ile ilgili bilgiler takip edilebilir. Sakai kullanan okul ve kurumlar, Sakai ismi nereden geliyor gibi soruların cevapları bulunabilir.

Programmers Cafe

  • Sakai çalışmalarında bulunmak isteyen geliştiriciler için en iyi bilgi kaynağı Programmers Cafe web sitesidir.
  • Bu sitede bulabilceğiniz bilgiler:
    • Öğreticiler (Tutorials)
    • İp uçları (Tips)
    • Belgeler (Documentation)
    • Örnek kodlar (Sample code)

Sakai Collab

  • Sakai Collab server, Sakai uygulamasının güncel sürümünün çalıştırıldığı ve Sakai, demo Sakai, veya deneme araçlarının topluluk üyelerinin işbirliğiyle kullanılmasına olanak sağlandığı bir yerdir.
  • Collab server aynı zamanda tüm Sakai posta listelerinin ve bazı belgelendirmelerin yönetilmesi amacıyla da kullanılmaktadır.

sakai-dev posta listesi

  • sakai-dev eposta listesi geliştirme sorularının sorulması için mükemmel bir yerdir.
  • sakai-dev eposta listesine kayıt
    1. Sakai Collab üzerinde bir hesap açınız ve giriş yapınız
    2. https://collab.sakaiproject.org/portal
    3. Soldaki Membership bağlantısına tıklayınız
    4. Üstteki Joinable Sites bağlantısına tıklayınız
    5. DG: Development için Join bağlantısına tıklayınız
  • Listeye eposta gönderimi:
    • sakai-dev@collab.sakaiproject.org

Sakai Confluence ve JIRA

Sakai kaynak kodu 

Eclipse

  • Sakai geliştiricilerinin oldukça büyük çoğunluğu geliştirme için  Eclipse geliştirme ortamını kullanmaktadır
    • Diğer geliştirme ortamlarını da (Netbeans v.b) kullanabilirsiniz fakat Eclipse uygulamasının bazı avantajları bulunmaktadır :
      • Destekli (eclipse dosyaları Sakai kod tabanında)
      • İyi anlaşılır (destek belge ve bilgi)
      • Genişletilmiş araçlar (appbuilder eklentisi)
  • Eğer istenirse ticari destek için:

Geliştirme Ortamı Kurulumu

  • İyi bir geliştirme ortamı kurulumuna sahip olmak, Sakai kaynak koduyla çalışmada kritik bir öneme sahiptir
  • Kurulum talimatlarının tümü adım adım programmers café web sitesinde mevcuttur:
  • Sakai geliştirmeyi kolaylaştıracak farklı ipuçları da yine sitede bulunmaktadır.

Sakai API Javadocs

  • Sakai Uygulama Programlama Arayüzü (API) yardım belgeleri Javadocs’a sürüm belgeleri ile birlikte aşağıdaki bağlantıdan erişilebilir:
  • Javadocs belgelerine bağlantı “JavaDocs” ile verilmektedir.
    • Güncel sürüm için bağlantı (2.9.0) http://source.sakaiproject.org/release/2.9.0/artifacts/sakai-javadoc-2.9.0.zip/
    • Yukarıdaki bağlantı çalışmazsa http://sourceforge.net/projects/sakai.mirror/files/sakai-javadoc-2.8.2.zip/download
  • Kontrol ettiğiniz, düzenlediğiniz veya geliştirdiğiniz Sakai kaynak kodu için javadocs derleyebilirsiniz.
  • Sakai kaynak kodu kopyanız için aşağıdaki komutu komut satırından çalıştırabilirsiniz.
    • maven sakai:javadoc
  • javadocs aşağıdaki yolda yaratılacaktır.
    • <sakai source>/target/sakai-javadoc.zip
  • URL:  http://bugs.sakaiproject.org/confluence/display/BOOT/Javadocs+for+the+Sakai+API
Yukarıdaki metin: https://confluence.sakaiproject.org/download/attachments/44793975/SakaiDevelopmentTips.ppt  sunusundan Aaron Zeckoski'in izni ile çevrilmiştir.

Sakai ve Sakai Türkiye Bilgi Paylaşım Blogu Hakkında

Sakai, eğitim, öğretim araştırma ve geliştirme için var olan bir topluluk ve bu topluluğun geliştirdiği yazılım paketine verilen ortak bir isimdir. Topluluğun ve yazılımın başarısını kolaylaştırmak için Sakai Vakfı tarafından desteklenmektedir. Sakai vakfı, işbirliğine, geliştirmeye ve etkili uygulamalara kolaylık sağlamak amacıyla topluluğa hizmet eder. (kaynak: http://www.sakaiproject.org/about-sakai)
Bu blogun amacı, Eğitim Topluluğu Lisansı (Educational Community License) altında lisanslanmış Sakai ürünleri Sakai CLE (Collaboration and Learning Environment-İşbirliği ve Öğrenme Ortamı) ve Sakai OAE (Open Academic Environment-Açık Akademik Ortam) hakkında Türkiye'deki geliştirici ve kullanıcılarla bilgi paylaşımında bulunmaktır.