该文件已命名scriptletTestsScriptlet.java
(是的,这是一个愚蠢的名称,jasper scritplets 也应该以小写字母开头,这似乎会干扰标准的 java 类命名)
不幸的是,即使类名和文件名匹配我仍然得到错误
java: 类 scriptletTestsScriptlet 是公共的,应该在名为 scriptletTestsScriptlet.java 的文件中声明
我已经从错误中复制粘贴了文件名。
Intellij 似乎对包或类名也没有问题。如果我将它们更改为不正确的值,它会抱怨。
package com.marinecyb.hilit2.nbm.gui.export;
import net.sf.jasperreports.engine.JRDefaultScriptlet;
import net.sf.jasperreports.engine.JRScriptletException;
public class scriptletTestsScriptlet extends JRDefaultScriptlet {
public void afterDetailEval() throws JRScriptletException {
String iGotMine = (String)this.getVariableValue("heading");
this.setVariableValue("scriptletOutput", iGotMine + ": Hello World");
}
}