2016-11-16 109 views
0

我想编译,我100%正面我已经正确导入一切。 我的错误:Javac找不到符号 - 导入错误?

C:\Program Files\Java\jdk1.8.0_111\bin>javac LauncherPanel.java 
LauncherPanel.java:8: error: cannot find symbol 
import net.minecraft.launcher.Launcher; 
          ^
    symbol: class Launcher 
    location: package net.minecraft.launcher 
LauncherPanel.java:9: error: package net.minecraft.launcher.ui.tabs does not exist 
import net.minecraft.launcher.ui.tabs.LauncherTabPanel; 
            ^
LauncherPanel.java:10: error: package net.minecraft.launcher.ui.tabs does not exist 
import net.minecraft.launcher.ui.tabs.WebsiteTab; 
            ^
LauncherPanel.java:19: error: cannot find symbol 
    private final LauncherTabPanel tabPanel; 
       ^
    symbol: class LauncherTabPanel 
    location: class LauncherPanel 
LauncherPanel.java:20: error: cannot find symbol 
    private final BottomBarPanel bottomBar; 
       ^
    symbol: class BottomBarPanel 
    location: class LauncherPanel 
LauncherPanel.java:22: error: cannot find symbol 
    private final Launcher launcher; 
       ^
    symbol: class Launcher 
    location: class LauncherPanel 
LauncherPanel.java:25: error: cannot find symbol 
    public LauncherPanel(Launcher launcher) 
        ^
    symbol: class Launcher 
    location: class LauncherPanel 
LauncherPanel.java:77: error: cannot find symbol 
    public LauncherTabPanel getTabPanel() 
     ^
    symbol: class LauncherTabPanel 
    location: class LauncherPanel 
LauncherPanel.java:82: error: cannot find symbol 
    public BottomBarPanel getBottomBar() 
     ^
    symbol: class BottomBarPanel 
    location: class LauncherPanel 
LauncherPanel.java:92: error: cannot find symbol 
    public Launcher getLauncher() 
     ^
    symbol: class Launcher 
    location: class LauncherPanel 
LauncherPanel.java:32: error: cannot find symbol 
    this.bottomBar = new BottomBarPanel(launcher); 
         ^
    symbol: class BottomBarPanel 
    location: class LauncherPanel 
LauncherPanel.java:33: error: cannot find symbol 
    this.tabPanel = new LauncherTabPanel(launcher); 
         ^
    symbol: class LauncherTabPanel 
    location: class LauncherPanel 
LauncherPanel.java:34: error: cannot find symbol 
    this.loginPanel = new TexturedPanel("/cakehoohoohoo.png"); 
         ^
    symbol: class TexturedPanel 
    location: class LauncherPanel 
LauncherPanel.java:68: error: cannot find symbol 
    return new TexturedPanel("/cakehoohoohoo.png"); 
      ^
    symbol: class TexturedPanel 
    location: class LauncherPanel 
14 errors 

...这是我的java文件:

package net.minecraft.launcher.ui; 
import java.awt.BorderLayout; 
import java.awt.CardLayout; 
import java.awt.GridBagLayout; 
import javax.swing.JPanel; 
import javax.swing.JProgressBar; 
import net.minecraft.launcher.Launcher; 
import net.minecraft.launcher.ui.tabs.LauncherTabPanel; 
import net.minecraft.launcher.ui.tabs.WebsiteTab; 
public class LauncherPanel 
    extends JPanel 
{ 
    public static final String CARD_DIRT_BACKGROUND = "loading"; 
    public static final String CARD_LOGIN = "login"; 
    public static final String CARD_LAUNCHER = "launcher"; 
    private final CardLayout cardLayout; 
    private final LauncherTabPanel tabPanel; 
    private final BottomBarPanel bottomBar; 
    private final JProgressBar progressBar; 
    private final Launcher launcher; 
    private final JPanel loginPanel; 
    public LauncherPanel(Launcher launcher) 
    { 
    this.launcher = launcher; 
    this.cardLayout = new CardLayout(); 
    setLayout(this.cardLayout); 
    this.progressBar = new JProgressBar(); 
    this.bottomBar = new BottomBarPanel(launcher); 
    this.tabPanel = new LauncherTabPanel(launcher); 
    this.loginPanel = new TexturedPanel("/cakehoohoohoo.png"); 
    createInterface(); 
    } 
    protected void createInterface() 
    { 
    add(createLauncherInterface(), "launcher"); 
    add(createDirtInterface(), "loading"); 
    add(createLoginInterface(), "login"); 
    } 
    protected JPanel createLauncherInterface() 
    { 
    JPanel result = new JPanel(new BorderLayout()); 
    this.tabPanel.getBlog().setPage("daxsocial.net16.net"); 
    JPanel topWrapper = new JPanel(); 
    topWrapper.setLayout(new BorderLayout()); 
    topWrapper.add(this.tabPanel, "Center"); 
    topWrapper.add(this.progressBar, "South"); 
    this.progressBar.setVisible(false); 
    this.progressBar.setMinimum(0); 
    this.progressBar.setMaximum(100); 
    result.add(topWrapper, "Center"); 
    result.add(this.bottomBar, "South"); 
    return result; 
    } 
    protected JPanel createDirtInterface() 
    { 
    return new TexturedPanel("/cakehoohoohoo.png"); 
    } 
    protected JPanel createLoginInterface() 
    { 
    this.loginPanel.setLayout(new GridBagLayout()); 
    return this.loginPanel; 
    } 
    public LauncherTabPanel getTabPanel() 
    { 
    return this.tabPanel; 
    } 
    public BottomBarPanel getBottomBar() 
    { 
    return this.bottomBar; 
    } 
    public JProgressBar getProgressBar() 
    { 
    return this.progressBar; 
    } 
    public Launcher getLauncher() 
    { 
    return this.launcher; 
    } 
    public void setCard(String card, JPanel additional) 
    { 
    if (card.equals("login")) 
    { 
     this.loginPanel.removeAll(); 
     this.loginPanel.add(additional); 
    } 
    this.cardLayout.show(this, card); 
    } 
} 

如果有人能告诉我什么,我做错了,那将是非常有帮助! 我使用jd-gui.exe对一个.class文件进行反编译,然后将代码复制到.txt文档中,对其进行编辑并保存为.java文件。我现在不能编译...

+1

你没有指定类路径。 – f1sh

+0

谢谢!我觉得自己很愚蠢...... –

+0

这就是学习过程的一部分。我强烈建议你不要使用javac,所有的构建和编译都应该由IDE或者构建工具(如ant或maven)来完成。 – f1sh

回答

1

该错误表示编译器未找到类net.minecraft.launcher.Launcher。换句话说,它既不能在源路径中找到源文件Launcher.java,也不能在类路径中找到Launcher.class。

可能您应该将包含Launcher.class的JAR文件添加到类路径(选项-classpath或环境变量CLASSPATH),假定您尚未创建/更改此类;否则,您必须调整源路径(选项-sourcepath) - 请参阅javac

请注意,import更像是一个快捷方式,因此您可以在代码中输入Launcher而不是net.minecraft.launcher.Launcher