Java Anylogic:从图形界面生成的代码引发类型转换异常
在遵循问题答案中给出的建议后,我最终得到了一个模型:Java Anylogic:从图形界面生成的代码引发类型转换异常,java,anylogic,codegen,Java,Anylogic,Codegen,在遵循问题答案中给出的建议后,我最终得到了一个模型: 主要地区代理人的空置人口 所述代理类型中引用main的状态图(由上一点实现) 参考代理状态的离散事件流程图 但是在建立模型之后,出现了3个类型和类型转换错误,它们都在自动生成的代码中。我不明白上述代码提供了什么功能 在上下文中,我的模型称为“Trenes”,代理类型为“Train”。所有错误都发生在Trainjava文件中。 异常发生在以下代码段中: 第一个: //用户API--------------------------------
- 主要地区代理人的空置人口
- 所述代理类型中引用main的状态图(由上一点实现)
- 参考代理状态的离散事件流程图
Train
java文件中。
异常发生在以下代码段中:
第一个:
//用户API-----------------------------------------------------
公用主管道get_Main(){
{
代理所有者=getOwner();
如果(主实例的所有者)返回(主)所有者;
}
返回null;
}
这一个原因导致无法从代理向主施放,这要感谢施放(主)所有者。它还导致代理和主的条件操作数类型不兼容。
原因是主的所有者实例不兼容
第二个:
@AnyLogicInternalCodegenAPI
私有空间{
main=get_main();
}
这个函数从第一个代码段调用该方法,并导致类型不匹配:无法从org.eclipse.jdt.internal.compiler.batch.Main转换为trenes.Main。
行Main=get_Main()代码>
如果有人能指导我什么样的图形界面配置会导致这些错误,以及如何在不破坏引用main的状态图的情况下纠正这些错误,我将不胜感激
编辑以添加模型结构和相关逻辑的捕获:
- 代理类型
- 离散事件流程图
您可能弄乱了一些内部编码,这种情况很少发生
试试这个:
- 创建一个全新的类
TrainNew
- 将其作为代理群体嵌入到Main上
- 从
Train
到TrainNew
- 完全删除
Train
并解决任何最终冲突(通过指向TrainNew
显示流程图、您的状态图(以及两者的位置)以及您在其中使用的代码和使用位置。谢谢@Felipe,我已经添加了该模型的捕获。