folder Tahribat.com Forumları
linefolder Java
linefolder Javac Ve Package Sorunu



Javac Ve Package Sorunu

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    dhmm
    dhmm's avatar
    Kayıt Tarihi: 15/Eylül/2011
    Erkek

    Arkadaslar java ile ilgili soyle bir sorunum var.

    Iki tane class olusturtuyorum. Birincisi (BasicWindowMonitor.java) su sekilde

    import java.awt.event.*;
    import java.awt.Window;
    
    public class BasicWindowMonitor extends WindowAdapter
    {
    	public void windowClosing(WindowEvent e)
    	{
    		Window w = e.getWindow();
    		w.setVisible(false);
    		w.dispose();
    		System.exit(0);
    	}
    }

     

    Ikincisi de ( HosgeldinizSWF.java )

    import javax.swing.*;
    import BasicWindowMonitor;
    
    public class HosgeldinizSWF
    {
    	public static void main(String args[])
    	{
    		JLabel etiket = new JLabel("Java'ya hosgeldiniz");
    		JFrame cerceve = new JFrame("HosgeldinizSWF");
    		cerceve.addWindowListener(new BasicWindowMonitor());
    		cerceve.getContentPane().add(etiket);
    		cerceve.setSize(100,100);
    		cerceve.setVisible(true);
    	}
    }

     

    Ben birinisini javac ile compile ediyorum erro vermiyor. Fakat ikincisini compile etmeye kalktigimda BasicWindowMonitor not found hatasi veriyor.

    package pck; ekledim ikisinede olmadi. import pck yaptim olmadi. Ayni sey net beans ile hallediyorum sikinti yok. 

    Ben cmd den javac kullanarak yapmak istiyorum bunu. Paketlerle ilgili bir sikinti var ama nasil yapmam gerek. Java bilen biri aydinlatsin. Kisacasi ayri bir dosyaya yazip olusturdugum class'i baska bir dosyada import edip kullanmak istiyorum. Bunu da javac kullanarak yapmak istiyorum. 

    Tesekkurler

    dhmm tarafından 02/Oca/16 18:10 tarihinde düzenlenmiştir

    Ozgurluk aslinda her istedigini yapabilmek degildir, istemedigini yapmamaktir. // Verdigin degeri gormeyince, gordugun degeri ver !!! // Hayatin herkes icin bir bavulu vardir !!! // Dusmek gerekir bazen hayatta; kalkmayi ogrenebilmek icin
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Hunter
    j4x
    j4x's avatar
    Kayıt Tarihi: 16/Temmuz/2005
    Erkek

    Hocam package belirtmediğin sınıflar default packagededir. Bunları beraber derliyorsan, aynı klasördeyse ve . (şuanki klasör) class path te ise sorun olmaması lazım.

    Ayrıca ciddi programlarda mutlaka package belirtmelisin. Package belirttikten sonra ise class path a dahil dizinler içinde packageye göre bir klasör yapısı oluşturup sınıfları bu şekilde yerleştirmen lazim.

    yani package com.tahribat.dhmm ve Hello sınıfı için, com/tahribat/dhmm/Hello.class gibi.


    The king is bleeding.
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    dhmm
    dhmm's avatar
    Kayıt Tarihi: 15/Eylül/2011
    Erkek
    j4x bunu yazdı

    Hocam package belirtmediğin sınıflar default packagededir. Bunları beraber derliyorsan, aynı klasördeyse ve . (şuanki klasör) class path te ise sorun olmaması lazım.

    Ayrıca ciddi programlarda mutlaka package belirtmelisin. Package belirttikten sonra ise class path a dahil dizinler içinde packageye göre bir klasör yapısı oluşturup sınıfları bu şekilde yerleştirmen lazim.

    yani package com.tahribat.dhmm ve Hello sınıfı için, com/tahribat/dhmm/Hello.class gibi.

    Hocam first.java (first classi) ve second.java (second classi) ayni klasorde ve package yok.

    Ben javac first.java deyince ok.javac second.java ddyince ok. 

    Ama ne zaman second.java icine import first; diyorum icine ediyor. Isin garip tarafi ayni kodlar netbeansta calisiyor. Ben idesiz gormek istiyorum. Olmadi gitti . Nryi eksik yapiyom acaba. Classpath olayi nedir ?

     

     

    dhmm tarafından 02/Oca/16 01:30 tarihinde düzenlenmiştir

    Ozgurluk aslinda her istedigini yapabilmek degildir, istemedigini yapmamaktir. // Verdigin degeri gormeyince, gordugun degeri ver !!! // Hayatin herkes icin bir bavulu vardir !!! // Dusmek gerekir bazen hayatta; kalkmayi ogrenebilmek icin
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Hunter
    j4x
    j4x's avatar
    Kayıt Tarihi: 16/Temmuz/2005
    Erkek

    Hocam ayni packageda olan classlar birbirine otomatik olarak import edilmiş gibidir. Neden firsti import etmeye çalışıyorsun onu da anlamadım.

    Hata mesaji fln ne verdiğini söylersen daha iyi olur.

    j4x tarafından 02/Oca/16 02:08 tarihinde düzenlenmiştir

    The king is bleeding.
  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Mastika.
    Absolut
    Absolut's avatar
    Kayıt Tarihi: 04/Ağustos/2011
    Erkek

    hatayi bi atarmisn hocam resim birde netbeansde nasil kullandiginin resmini.

     

    edit : resime bakarsan sknti yok bende

    https://www.evernote.com/shard/s672/sh/583acbe7-7902-4220-b8c3-e42c0ee68388/a2430921c1248bda

     

    Absolut tarafından 02/Oca/16 11:22 tarihinde düzenlenmiştir

    Nice babayigitler kirayi kim odeyecek, coluk cocuk ne yiyecek derdinden dolayi dunyayi degistiremiyor.
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ozgunlu
    ozgunlu's avatar
    Banlanmış Üye
    Kayıt Tarihi: 11/Kasım/2011
    Erkek

    Aynı package' da ise bir sıkıntı çıkarmaması lazım hocam.

    Zaten class' lar içinde birbirlerinden çağırırken farklı package' larda ise belirtiyorsun.

    javac ile derleyince o zaten içerisinde buluyor.


    Hello, i am nothing. I come from Neverland.
  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    garga
    garga's avatar
    Kayıt Tarihi: 29/Temmuz/2002
    Erkek

    hocam bunun bi suru baska baska yollari var. ne yapman gerektigine gore degisebilir cozum ama senin icin en basiti HosgeldinizSWF.java nin icinde bir tane BasicWindowMonitor instance yaratman onceden; sonradanda o variable i kullanman;

     

    ornek sekil bir A asagida;

     

     
    import javax.swing.*;
     
    public class HosgeldinizSWF
    {
        public static void main(String args[])
        {
    	BasicWindowMonitor myMonitor = new BasicWindowMonitor(); 
            JLabel etiket = new JLabel("Java'ya hosgeldiniz");
            JFrame cerceve = new JFrame("HosgeldinizSWF");
            cerceve.addWindowListener(myMonitor);
            cerceve.getContentPane().add(etiket);
            cerceve.setSize(100,100);
            cerceve.setVisible(true);
        }
    }

     


    anca gidersin...
  8. KısayolKısayol reportŞikayet pmÖzel Mesaj
    garga
    garga's avatar
    Kayıt Tarihi: 29/Temmuz/2002
    Erkek

    compiled and run with no problem :)


    anca gidersin...
  9. KısayolKısayol reportŞikayet pmÖzel Mesaj
    dhmm
    dhmm's avatar
    Kayıt Tarihi: 15/Eylül/2011
    Erkek

    Bir kitap indirdim bir linkten. orada import BasicWindowMonitor var. onu cikardim package koymadan calisti.

    notepad++ ile yazip javac ile yaptim.

    BasicWindowMonitor.java

    import java.awt.event.*;
    import java.awt.Window;
    
    public class BasicWindowMonitor extends WindowAdapter
    {
    		public void windowClosingEvent(WindowEvent e)
    		{
    			Window w = e.getWindow();
    			w.setVisible(false);
    			w.dispose();
    			System.exit(0);
    		}
    }

    Program.java

    import javax.swing.*;
    
    public class Program
    {
    	public static void main(String args[])
    	{
    		JLabel etiket = new JLabel("Etiket");
    		JFrame cerceve = new JFrame("Frame basligi");
    		
    		cerceve.addWindowListener(new BasicWindowMonitor());
    		cerceve.getContentPane().add(etiket);
    		cerceve.pack();
    		cerceve.setVisible(true);
    	}
    }

    Bu seferde exit atmiyor. Window Adapter kullaniyorum ve windowClosingEvent var neden oyle ?

     

     

    dhmm tarafından 02/Oca/16 15:41 tarihinde düzenlenmiştir

    Ozgurluk aslinda her istedigini yapabilmek degildir, istemedigini yapmamaktir. // Verdigin degeri gormeyince, gordugun degeri ver !!! // Hayatin herkes icin bir bavulu vardir !!! // Dusmek gerekir bazen hayatta; kalkmayi ogrenebilmek icin
  10. KısayolKısayol reportŞikayet pmÖzel Mesaj
    dhmm
    dhmm's avatar
    Kayıt Tarihi: 15/Eylül/2011
    Erkek
    dhmm bunu yazdı

    Bir kitap indirdim bir linkten. orada import BasicWindowMonitor var. onu cikardim package koymadan calisti.

    notepad++ ile yazip javac ile yaptim.

    BasicWindowMonitor.java

    import java.awt.event.*;
    import java.awt.Window;
    
    public class BasicWindowMonitor extends WindowAdapter
    {
    		public void windowClosingEvent(WindowEvent e)
    		{
    			Window w = e.getWindow();
    			w.setVisible(false);
    			w.dispose();
    			System.exit(0);
    		}
    }

    Program.java

    import javax.swing.*;
    
    public class Program
    {
    	public static void main(String args[])
    	{
    		JLabel etiket = new JLabel("Etiket");
    		JFrame cerceve = new JFrame("Frame basligi");
    		
    		cerceve.addWindowListener(new BasicWindowMonitor());
    		cerceve.getContentPane().add(etiket);
    		cerceve.pack();
    		cerceve.setVisible(true);
    	}
    }

    Bu seferde exit atmiyor. Window Adapter kullaniyorum ve windowClosingEvent var neden oyle ?

     

     

    Tamam halloldu :) Nerden estiyse fonksiyon adinin sonuna event yazmisim  :)

     

    dhmm tarafından 02/Oca/16 16:57 tarihinde düzenlenmiştir

    Ozgurluk aslinda her istedigini yapabilmek degildir, istemedigini yapmamaktir. // Verdigin degeri gormeyince, gordugun degeri ver !!! // Hayatin herkes icin bir bavulu vardir !!! // Dusmek gerekir bazen hayatta; kalkmayi ogrenebilmek icin
Toplam Hit: 2151 Toplam Mesaj: 9
java