![](/img/trans.png)
[英]java.lang.NoClassDefFoundError: javax/mail/Authenticator
[英]java.lang.NoClassDefFoundError: javax/mail/Authenticator - causing fxml page not to load
我正在重构这个问题 - 从另一个问题编辑。
当我登录程序并双击tableView中的项目时,我在弹出的新选项卡上没有得到任何内容。 Main.fxml显示正常,这意味着MainController似乎运行良好,Image:
当您双击某一行时,它应如下所示:
但这种情况正在发生:
为了向您展示如何调用代码,它在.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);
正如您在第二张图片的右下角看到的那样(当我双击一行时程序应该打开的方式),我可以添加或删除项目。 当此项目达到最小值时,它会自动生成一封电子邮件,让我知道还需要多少订单。 我相信这个功能不正常,可能导致整个页面无法加载? 我已经审查了其他类似的问题,并尝试了没有运气的建议,我添加了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更改为1.4.1,这很好。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.