Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java.lang.NoClassDefFoundError:javax/mail/Authenticator-导致fxml页面无法加载_Java_Eclipse_Maven_Tableview_Fxml - Fatal编程技术网

java.lang.NoClassDefFoundError:javax/mail/Authenticator-导致fxml页面无法加载

java.lang.NoClassDefFoundError:javax/mail/Authenticator-导致fxml页面无法加载,java,eclipse,maven,tableview,fxml,Java,Eclipse,Maven,Tableview,Fxml,我正在重组这个问题——根据另一个问题编辑而成 当我登录到程序并双击tableView中的某个项目时,我在弹出的新选项卡上根本看不到任何东西。Main.fxml显示良好,这意味着MainController似乎工作正常,如图所示: 当您双击一行时,它应该如下所示: 但这种情况正在发生: 为了向您展示如何调用代码,该代码在.java格式下运行良好,但在编译时会中断: Tab tab = new Tab(); tabs.getTabs().add(tab); tab.setTex

我正在重组这个问题——根据另一个问题编辑而成

当我登录到程序并双击tableView中的某个项目时,我在弹出的新选项卡上根本看不到任何东西。Main.fxml显示良好,这意味着MainController似乎工作正常,如图所示:

当您双击一行时,它应该如下所示:

但这种情况正在发生:

为了向您展示如何调用代码,该代码在.java格式下运行良好,但在编译时会中断:

Tab tab = new Tab();
    tabs.getTabs().add(tab);
    tab.setText(tableView.getSelectionModel().getSelectedItem().getDescription());
    // loads the previously instantiated version of the Item.fxml resource
    FXMLLoader loader = new FXMLLoader(getClass().getClassLoader().getResource("fxml/Item.fxml"));
    tab.setContent((Node) loader.load());

    date = dateLbl.getText();
    time = timeLbl.getText();
    user = userLbl.getText();

    SingleSelectionModel<Tab> selectionModel = tabs.getSelectionModel();
    selectionModel.select(tab);
    // creates an ItemController object and passes through the results of the database query and stores them as variables in the ItemController, also sets the database to aseptic
    ItemController controller = loader.<ItemController>getController();
    controller.setTextItems(id, manufacturer_name, model_number, vendor_name, vendor_part_number, tolmar_part_number, part_location, price, quantity, min, max, img, equipment_group, equipment_id, additional_notes, description);
    controller.setUserVariables(user, time, date);
    controller.setDBState(aseptic);
Tab Tab=new Tab();
tabs.getTabs().add(tab);
tab.setText(tableView.getSelectionModel().getSelectedItem().getDescription());
//加载先前实例化的Item.fxml资源版本
FXMLLoader=newFXMLLoader(getClass().getClassLoader().getResource(“fxml/Item.fxml”);
tab.setContent((节点)loader.load());
date=dateLbl.getText();
time=timeLbl.getText();
user=userLbl.getText();
SingleSelectionModel selectionModel=tabs.getSelectionModel();
选择模型。选择(选项卡);
//创建ItemController对象并传递数据库查询的结果,并将其作为变量存储在ItemController中,还将数据库设置为无菌
ItemController=loader.getController();
控制器.设置项(id、制造商名称、型号、供应商名称、供应商零件号、tolmar零件号、零件位置、价格、数量、最小值、最大值、img、设备组、设备id、附加注释、说明);
controller.setUserVariables(用户、时间、日期);
控制器。setDBState(无菌);
正如您在第二个图像的右下角所看到的(当我双击一行时程序应该打开的方式),我可以添加或删除项目。当这个项目达到最低限度时,它会自动生成一封电子邮件,让我知道我还需要订购多少。我相信这个功能不能正常工作,可能导致整个页面无法加载?我已经回顾了其他类似的问题,并尝试了一些建议,但没有成功,我添加了mail.jar和activation.jar文件,并将它们添加到我的pom中(见下文)。我觉得我已经非常接近于让这个代码在现实世界中实际工作,请帮助,谢谢

<dependency>
    <groupId>javax.mail</groupId>
    <artifactId>mail</artifactId>
    <version>1.4</version>
</dependency>
<dependency>
    <groupId>javax.activation</groupId>
    <artifactId>activation</artifactId>
    <version>1.1</version>
</dependency>

javax.mail
邮件
1.4
javax.activation
激活
1.1

它现在工作正常,我将javax.mail依赖项的版本从1.4更改为1.4.1,效果良好。

它现在工作正常,我将javax.mail依赖项的版本从1.4更改为1.4.1,效果良好