1、在Jblendia初始化file system时(第一次开机/restore factory后),没有生成z:\@Java\JavaAppFactory这个文件夹。
2、在安装完Java后,执行srv_java_appfactory_add_record,其中有如下逻辑。
handle = FS_Open((U16*) filename, FS_CREATE_ALWAYS | FS_COMMITTED);//此时尝试打开文件z:\@Java\JavaAppFactory\xxx,但是发现文件夹不存在
if (handle < 0)
{
if(handle == FS_PATH_NOT_FOUND )
{
kal_wsprintf(filename, "%s\\%s\0",JAVA_SYS_PATH,JAVA_APP_FACTORY_NAME);
FS_CreateDir(filename);//重新生成文件夹
}
err_code = 2;
}
//但是生成文件夹后,就没有再次尝试生成java应用所需的文件了。
[对比]
Rolltech:第一次开机jam_main -> javaFileGenerator
a) 在jam_call_back_functions.jam_check_and_gen_sys_file中生成z:\@Java。
b) srv_java_appfactory_gen_file里面生成z:\@Java\JavaAppFactory。
Aplix:第一次开机jam_main -> javaFileGenerator -> srv_java_appfactory_gen_file,此时z:\@java文件夹还没有生成,因此srv_java_appfactory_gen_file中。
kal_wsprintf(filename, "%s\\%s\0",JAVA_SYS_PATH,JAVA_APP_FACTORY_NAME);
if((handle = FS_CreateDir(filename)) < FS_NO_ERROR)//filename此处是z:\@Java\JavaAppFactory
create dir会返回FS_PATH_NOT_FOUND。
[SOLUTION]
以下两种方法皆可解决:
1、请Jblendia在初始化的时候在srv_java_appfactory_gen_file之前先准备好z:\@java文件夹,使得srv_java_appfactory_gen_file可以成功创建z:\@Java\JavaAppFactory。
2、在srv_java_appfactory_add_record中修改,即接受开机后z:\@Java\JavaAppFactory不存在的可能性。此处如果发现路径不存在,就重新生成文件夹;然后继续生成所需的文件。
2、在安装完Java后,执行srv_java_appfactory_add_record,其中有如下逻辑。
handle = FS_Open((U16*) filename, FS_CREATE_ALWAYS | FS_COMMITTED);//此时尝试打开文件z:\@Java\JavaAppFactory\xxx,但是发现文件夹不存在
if (handle < 0)
{
if(handle == FS_PATH_NOT_FOUND )
{
kal_wsprintf(filename, "%s\\%s\0",JAVA_SYS_PATH,JAVA_APP_FACTORY_NAME);
FS_CreateDir(filename);//重新生成文件夹
}
err_code = 2;
}
//但是生成文件夹后,就没有再次尝试生成java应用所需的文件了。
[对比]
Rolltech:第一次开机jam_main -> javaFileGenerator
a) 在jam_call_back_functions.jam_check_and_gen_sys_file中生成z:\@Java。
b) srv_java_appfactory_gen_file里面生成z:\@Java\JavaAppFactory。
Aplix:第一次开机jam_main -> javaFileGenerator -> srv_java_appfactory_gen_file,此时z:\@java文件夹还没有生成,因此srv_java_appfactory_gen_file中。
kal_wsprintf(filename, "%s\\%s\0",JAVA_SYS_PATH,JAVA_APP_FACTORY_NAME);
if((handle = FS_CreateDir(filename)) < FS_NO_ERROR)//filename此处是z:\@Java\JavaAppFactory
create dir会返回FS_PATH_NOT_FOUND。
[SOLUTION]
以下两种方法皆可解决:
1、请Jblendia在初始化的时候在srv_java_appfactory_gen_file之前先准备好z:\@java文件夹,使得srv_java_appfactory_gen_file可以成功创建z:\@Java\JavaAppFactory。
2、在srv_java_appfactory_add_record中修改,即接受开机后z:\@Java\JavaAppFactory不存在的可能性。此处如果发现路径不存在,就重新生成文件夹;然后继续生成所需的文件。