Kezdőoldal » Számítástechnika » Programozás » Java, Javac hiba: cannot find...

Java, Javac hiba: cannot find symbol?

Figyelt kérdés

Két java fájlom van: Browser.java [main] és a Simpleweb.java


classfájlok készítésekor: javac webbrowser\Browser.java

az alábi jön elő:

..\Browser.java:5: error: cannot find symbol

Simpleweb dude = new Simpleweb();

^

symbol: class Simpleweb

location: class Browser

Ugyanez mégegyszer, a végén: 2 errors


Browser.java:

import javax.swing.JFrame;


public class Browser {

--public static void main(String[] args) {

----Simpleweb dude = new Simpleweb();

----dude.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

--}

}


Simpleweb.java:

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

import javax.swing.event.*;


public class Simpleweb extends JFrame {

--private JTextField addressBar;

--private JEditorPane display;


--public Simpleweb() {

----super("Browser");

----addressBar = new JTextField("enter a URL hoss!");

----addressBar.addActionListener(

----new ActionListener() {

------public void actionPerformed(ActionEvent event) {

--------loadCrap(event.getActionCommand());

--------}

------}

----);

----add(addressBar, BorderLayout.NORTH);


----display = new JEditorPane();

----display.setEditable(false);

----display.addHyperlinkListener(

----new HyperlinkListener() {

------public void hyperlinkUpdate(HyperlinkEvent event) {

--------if(event.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {

----------loadCrap(event.getURL().toString());

--------}

------}

----}

----);

----add(new JScrollPane(display), BorderLayout.CENTER);

----setSize(500,300);

----setVisible(true);

--}


--private void loadCrap(String userText){

----try {

------display.setPage(userText);

------addressBar.setText(userText);

----}

----catch(Exception e) {

------System.out.println("crap!");

----}

--}

}


Mi a hiba oka?



2014. szept. 27. 21:24
 1/6 anonim ***** válasza:
Ha a két java fájl nincs package-ben, akkor abból a mappából kell fordítanod amiben vannak. Vagy tedd be a webbrowser package-be, mert így nem találja meg a fordító.
2014. szept. 27. 23:25
Hasznos számodra ez a válasz?
 2/6 A kérdező kommentje:
A webbrowser csak egy mappa amiben van a 2 java fájl nem lényeges a kiírásomban. A javac-t a webbrowser mappában lévő Browser.java-ra futtatom, csak egy útvonal, nincs szükség közös package-re.
2014. szept. 28. 13:01
 3/6 A kérdező kommentje:
Szerintem a hiba valahol az importoknál / öröklésnél lehet, mert a kód nélküli Simpleweb példányosításakor is ezt írja.
2014. szept. 28. 13:28
 4/6 A kérdező kommentje:

Kipróbáltam ezzel a 2 fájllal is, ugyanezt írja ki:

Browser.java:

public class Browser{

public static void main(String[] args){

Simpleweb dude = new Simpleweb();

}

}

Simpleweb.java:

public class Simpleweb{

}

Visszamegyek dedóba :S

Hogyan lehet példányosítani javaban, hogy azt felfogja a javac is?

2014. szept. 28. 13:53
 5/6 A kérdező kommentje:

Rájöttem arra, hogy a java fájl maga is hibás. Egy programból másoltam a fájlalapot, ezért akárhogy módosítottam a tartalmát hibás maradt.


Továbbá kihagytam az import java.io.*; sort a Browser.java-ból, ez megkeresi a mappában található többi fájlt, így már lehet hivatkozni a Simpleweb-re.


Viszont újabb hiba állt fel, a fordításkor ismét.

javac *.java

Hibaüzenet:

Simpleweb.java:6: error: class Simpleweb is public, should be declared in a file name public class Simpleweb extends JFrame{

^

1 error


Ha jól értem az osztály nevét tartalmazó sort akarja a fájl nevébe helyettesíteni, mert nem értelmezi. Mért nem?

2014. szept. 28. 15:36
 6/6 A kérdező kommentje:

Nem tudom mi volt a legutolsó hiba, de újraírás után már fordul az egész.


Köszönöm a segítséged válaszadó, és elnézést hogy elsőre rosszul értettem az üzeneted!

2014. szept. 28. 15:47

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!