当前位置: 首页 > 知识库问答 >
问题:

一点教程

鲜于勇
2023-03-14

继oracle关于创建GUI的教程之后,该教程promise,在运行应用程序时,我必须选择主类,然而,Netbeans找不到任何主类?

这是我的代码:

public class GUI extends javax.swing.JFrame {



/**
 * Creates new form GUI
 */
public GUI() {
    initComponents();
}

/**
 * This method is called from within the constructor to initialize the form.
 * WARNING: Do NOT modify this code. The content of this method is always
 * regenerated by the Form Editor.
 */
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">                          
private void initComponents() {

    jTextField1 = new javax.swing.JTextField();
    jLabel1 = new javax.swing.JLabel();
    jButton1 = new javax.swing.JButton();

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
    setTitle("Bookshop");

    jTextField1.setText("Enter Title");
    jTextField1.setName(""); // NOI18N
    jTextField1.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jTextField1ActionPerformed(evt);
        }
    });

    jLabel1.setText("Book Title");

    jButton1.setText("Submit");
    jButton1.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jButton1ActionPerformed(evt);
        }
    });

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
    getContentPane().setLayout(layout);
    layout.setHorizontalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(layout.createSequentialGroup()
            .addContainerGap()
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addComponent(jButton1)
                .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, 82, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addGap(18, 18, 18)
            .addComponent(jLabel1)
            .addContainerGap(244, Short.MAX_VALUE))
    );
    layout.setVerticalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(layout.createSequentialGroup()
            .addContainerGap()
            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addComponent(jLabel1)
                .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE))
            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 18, Short.MAX_VALUE)
            .addComponent(jButton1)
            .addGap(228, 228, 228))
    );

    pack();
}// </editor-fold>                        

private void jTextField1ActionPerformed(java.awt.event.ActionEvent evt) {                                            
    // TODO add your handling code here:
}                                           

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
    // TODO add your handling code here:

     //Parse degrees Celsius as a double and convert to Fahrenheit.
String Title = (String)(jTextField1.getText());
jLabel1.setText("Selected Title:" + Title);

}                                        

/**
 * @param args the command line arguments
 */
public static void main(String args[]) {
    /* Set the Nimbus look and feel */
    //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
    /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
     * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 
     */
    try {
        for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
            if ("Nimbus".equals(info.getName())) {
                javax.swing.UIManager.setLookAndFeel(info.getClassName());
                break;
            }
        }
    } catch (ClassNotFoundException ex) {
        java.util.logging.Logger.getLogger(GUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    } catch (InstantiationException ex) {
        java.util.logging.Logger.getLogger(GUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    } catch (IllegalAccessException ex) {
        java.util.logging.Logger.getLogger(GUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    } catch (javax.swing.UnsupportedLookAndFeelException ex) {
        java.util.logging.Logger.getLogger(GUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    }
    //</editor-fold>

    /* Create and display the form */
    java.awt.EventQueue.invokeLater(new Runnable() {
        public void run() {
            new GUI().setVisible(true);
        }
    });
}

// Variables declaration - do not modify                     
private javax.swing.JButton jButton1;
private javax.swing.JLabel jLabel1;
private javax.swing.JTextField jTextField1;
// End of variables declaration                   
}

我以为“public static void main(String args[]){”声明了一个main类。GUI.java类在源代码包中,所以我真的不明白。

请注意,我对Java非常陌生,非常感谢您抽出时间。

共有2个答案

徐英锐
2023-03-14
  1. 在项目浏览器中右键单击项目

如果您只想运行该文件,请在包资源管理器中右键单击该类,然后单击运行文件,或(AltR,F),或(ShiftF6)

我以前犯的错误是当我创建一个新项目时,我忘了打开钥匙“Create Main Class`复选框,这样它就为我创建了一个类,我不喜欢这个类,所以我删除了这个类。在这种情况下,我必须执行上述步骤来解决这个问题,这样它才能正确运行。NetBeans为您创建的主类是启动类。如果删除它,您需要手动为项目指定新的启动类t、 然后清洁和建造。

李泓
2023-03-14

你的理解是正确的,我看不出你的主课有什么明显的问题。

尽管如此:

public static void main(String args[]) {

应该是:

public static void main(String[] args) {

如果您右键单击项目窗口中的Java文件,并选择“运行此文件”或“调试此文件”,这将告诉netbean执行该文件,忽略项目设置。

如果可行,那么进入项目的属性,并在其中设置主类以备将来使用。

你最好的办法是用除法来追踪这个问题。创建一个新文件,在其中创建一个空的main()方法,只打印“你好世界”,然后一次跨一个部分传输你的代码,直到你找到打破它的东西。

 类似资料:
  • 继oracle关于创建GUI的教程之后,该教程promise,在运行应用程序时,我必须选择主类,然而,Netbeans找不到任何主类? 这是我的代码: 我以为“public static void main(String args[]){”声明了一个main类。GUI.java类在源代码包中,所以我真的不明白。 请注意,我对Java非常陌生,非常感谢您抽出时间。

  • 在jsp中,如果调用,则会出现以下异常: http 404错误--找不到sampleServlet。我在web.xml文件中设置了sampleServlet,URL模式也设置为/sampleServlet。 为什么我要得到404(找不到servlet.)?

  • 我想按计划更改活动的颜色。在谷歌搜索之后,我发现这些链接:primefaces调度程序事件颜色在将primefaces Jar 3.3替换为4.0并更改primefaces调度程序事件的颜色后不起作用。但他们都不为我工作。 这是HTML页面: 这是我在豆子时间表上写的iew.java: 关于文件样式。css,我有: 你对解决这个问题有什么想法吗?任何建议都很感激。多谢了。

  • 对不起,我的学院没有把整个代码整理出来

  • 站点帮助包括帮助内容和帮助类型。 一、先添加帮助类型 帮助类型包括添加帮助类型操作和帮助类型列表。 帮助列表的显示项包括类型名称、排序和单个帮助类型的删除操作。 添加帮助类型所设置的信息包括帮助类型名称和排序。 二、添加帮助内容 帮助内容包括批量删除操作、添加帮助内容操作和帮助列表。 帮助列表的显示项包括标题、分类、排序、单个帮助的修改、删除和预览操作。点击预览之后,会在浏览器的新标签页打开前台该

  • 本文向大家介绍MyBatis一对一映射初识教程,包括了MyBatis一对一映射初识教程的使用技巧和注意事项,需要的朋友参考一下 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Jav