1

下面是示例代码

SUBROUTINE HELLO.WORLD
*-----------------------------------------------------------------------------
*
*-----------------------------------------------------------------------------
* Modification History :
*-----------------------------------------------------------------------------
*-----------------------------------------------------------------------------

CRT "HELLO WORLD"

END

编译错误;

01/01/2019 16:26:03 Compiling HELLO.WORLD...                    ERROR
     Error : (line 12) HELLO.WORLD.b, No component defined. $PACKAGE is mandatory !
Compilation completed for 1 file(s). 1 error
01/01/2019 16:26:03 Compiling HELLO.WORLD...                    ERROR
     Error : (line 12) HELLO.WORLD.b, No component defined. $PACKAGE is mandatory !
Compilation completed for 1 file(s). 1 error

我已经设置(在设计工作室的切换 tafj 项目性质选项期间);

  • TAFJ_HOME 正确。
  • “已知库”部分下的 T24lib 目录。
  • Java 文件夹:....\ProjectName-models\java。
  • 类文件夹:....\ProjectName-models\classes。

谢谢

4

4 回答 4

2

要关闭对 tCompile 的检查,请在 tafj.properties 中设置这些属性:

temn.tafj.compiler.internal.development=false
temn.tafj.compiler.component.strict.mode=false

但是,要遵循“最佳实践方式”,您应该使用 $PACKAGE 语句,然后您的 JBC 代码将被编译成适当的 Java 包并放入 JAR 文件中。请注意,在此之前,您应该在 T24 Design Studio 中执行“New-->T24Component 文件夹结构”。这将创建 XX.componentname.component 文件,您可以在其中定义子例程。这个“XX.Local.component”必须先编译:

component XX.Local
# Component Isolation Definition
metamodelVersion 1.6
# -------------------------------------------------

public method helloWorld ()
{
    jBC: HELLO.WORLD
}

然后您可以像这样在子例程中引用 $PACKAGE:

$PACKAGE XX.Local
SUBROUTINE HELLO.WORLD
    CRT 'Hello, World!'
RETURN
END

也可以在没有 Design Studio 的情况下手动创建组件。除非您有充分的理由,否则您不应该使用 Dunce Cap(参见:https ://en.wikipedia.org/wiki/Dunce)。

于 2019-11-26T17:24:10.873 回答
0

右键单击项目源文件夹,然后单击“戴上/取下 Dunce 帽”。再次编译。

在此处输入图像描述

于 2019-08-27T14:57:09.820 回答
0

对于 R19,右键单击项目导航到属性->TAFJ->编译器->取消选中维护验证代码。

于 2019-10-09T09:30:34.053 回答
-1

这是一个子程序,它需要一个 RETURN 语句

于 2019-10-25T05:40:28.607 回答