找回密码
 初始化身份识别芯片
查看: 640|回复: 9

远程调查java文件放在mod里调用出错

[复制链接]

势力巨擘

红花

发表于 2023-6-19 10:17:41 | 显示全部楼层 |阅读模式
Mod Bug汇报
已解决
游戏版本: 0.95.1
Mod中文名: 红花
Mod版本:
游戏日志:
[游戏日志]

24600 [Thread-3] INFO com.fs.graphics.TextureLoader - Cleaned buffer for texture graphics/ships/stations/module_medium_pd1.png (using cast)
24602 [Thread-3] INFO com.fs.graphics.TextureLoader - Cleaned buffer for texture graphics/ships/mercury/mercury_substandard.png (using cast)
24604 [Thread-3] INFO com.fs.graphics.TextureLoader - Cleaned buffer for texture graphics/ships/wasp_ftr.png (using cast)
24742 [Thread-3] ERROR com.fs.starfarer.combat.CombatMain - java.lang.RuntimeException: Error loading [data.abilities.hhRemoteSurveyAbility]
java.lang.RuntimeException: Error loading [data.abilities.hhRemoteSurveyAbility]
at com.fs.starfarer.loading.scripts.ScriptStore$3.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: File 'data/abilities/hhRemoteSurveyAbility.java', Line 114, Column 18: Assignment conversion not possible from type "java.lang.Object" to type "com.fs.starfarer.api.campaign.PlanetAPI"
at org.codehaus.janino.JavaSourceClassLoader.generateBytecodes(JavaSourceClassLoader.java:226)
at org.codehaus.janino.JavaSourceClassLoader.findClass(JavaSourceClassLoader.java:178)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 2 more
Caused by: org.codehaus.commons.compiler.CompileException: File 'data/abilities/hhRemoteSurveyAbility.java', Line 114, Column 18: Assignment conversion not possible from type "java.lang.Object" to type "com.fs.starfarer.api.campaign.PlanetAPI"
at org.codehaus.janino.UnitCompiler.compileError(UnitCompiler.java:10174)
at org.codehaus.janino.UnitCompiler.assignmentConversion(UnitCompiler.java:9071)
at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:1845)
at org.codehaus.janino.UnitCompiler.access$2000(UnitCompiler.java:185)
at org.codehaus.janino.UnitCompiler$4.visitLocalVariableDeclarationStatement(UnitCompiler.java:945)
at org.codehaus.janino.Java$LocalVariableDeclarationStatement.accept(Java.java:2508)
at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:958)
at org.codehaus.janino.UnitCompiler.compileStatements(UnitCompiler.java:1007)
at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:993)
at org.codehaus.janino.UnitCompiler.access$1000(UnitCompiler.java:185)
at org.codehaus.janino.UnitCompiler$4.visitBlock(UnitCompiler.java:935)
at org.codehaus.janino.Java$Block.accept(Java.java:2012)
at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:958)
at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:1273)
at org.codehaus.janino.UnitCompiler.access$1500(UnitCompiler.java:185)
at org.codehaus.janino.UnitCompiler$4.visitWhileStatement(UnitCompiler.java:940)
at org.codehaus.janino.Java$WhileStatement.accept(Java.java:2244)
at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:958)
at org.codehaus.janino.UnitCompiler.compileStatements(UnitCompiler.java:1007)
at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:2293)
at org.codehaus.janino.UnitCompiler.compileDeclaredMethods(UnitCompiler.java:822)
at org.codehaus.janino.UnitCompiler.compileDeclaredMethods(UnitCompiler.java:794)
at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:507)
at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:393)
at org.codehaus.janino.UnitCompiler.access$400(UnitCompiler.java:185)
at org.codehaus.janino.UnitCompiler$2.visitPackageMemberClassDeclaration(UnitCompiler.java:347)
at org.codehaus.janino.Java$PackageMemberClassDeclaration.accept(Java.java:1139)
at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:354)
at org.codehaus.janino.UnitCompiler.compileUnit(UnitCompiler.java:322)
at org.codehaus.janino.JavaSourceClassLoader.generateBytecodes(JavaSourceClassLoader.java:224)
[md]### 游戏信息

游戏版本: 0.95.1a-RC6

### 系统信息

操作系统:Microsoft Windows 10 企业版

版本:10.0.19045 暂缺 Build 19045

总可用内存:`7.88G`


Java版本:`1.7.0_79`

Java路径:D:+you+xi
.StarSectorjre


虚拟机参数:java.exe -XX:CompilerThreadPriority=1 -XX:+CompilerThreadHintNoPreempt -Djava.library.path=native\windows -Xverify:none -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=80 -XX:MaxTenuringThreshold=15 -Xmn2g -Xms6g -Xmx6g -Xss2m -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:jvm.log -classpath janino.jar;commons-compiler.jar;commons-compiler-jdk.jar;starfarer.api.jar;starfarer_obf.jar;jogg-0.0.7.jar;jorbis-0.0.15.jar;json.jar;lwjgl.jar;jinput.jar;log4j-1.2.9.jar;lwjgl_util.jar;fs.sound_obf.jar;fs.common_obf.jar;xstream-1.4.10.jar -Dcom.fs.starfarer.settings.paths.saves=..\saves -Dcom.fs.starfarer.settings.paths.screenshots=..\screenshots -Dcom.fs.starfarer.settings.paths.mods=..\mods -Dcom.fs.starfarer.settings.paths.logs=. com.fs.starfarer.StarfarerLauncher

堆栈初始大小(`-Xms`):`6144m`

堆栈最大大小(`-Xmx`):`6144m`


### Mod信息

|Mod名称 |Mod版本 |已启用 |
|-|-|-|
|前置LazyLib |2.7b |否 |
|前置zz GraphicsLib |1.6.1 |否 |
|前置MagicLib |0.46.1-rc03|否 |
|!红花 |---11 |是 |
|prv 星工场 |v25.1 |否 |
|prv的左径船包 |v1 |否 |
|prv的额外内容 |v3 |否 |
|万物皆可捞Salvage Everything |1.1.2 |否 |
|二次元(不是动漫什么的)拓展Nijigen Extend |0.3.2 |否 |
|人之领巨构扫描器-找出星门、星冕分流器、低温休眠舱Scan Those Gates |1.5.0 |否 |
|军官扩展Officer Extension |0.4.3 |否 |
|前置LunaLib |1.6.0 |否 |
|势力-鬣犬矿业 |2.7.0 |否 |
|势力争霸 [Nexerelin] |0.10.6d |否 |
|卢德拓展 [Luddic Enhancement] |1.2.5l |否 |
|可视化维修进度 [Visualized Repair Progress]|0.1.4 |否 |
|外环带联盟 Outer Rim Allience |0.94rc1 |否 |
|头像Another Portrait Pack |1.4.0 |否 |
|恶魔航电 [Diable Avionics] |2.7.0rc2|否 |
|战俘营地Take No Prisoners |0.14.4 |否 |
|战斗小地图Common Radar |2.5 |否 |
|战斗系统标识 [System Marker] |0.1.3-RC1|否 |
|战斗骚话[Combat Chatter] |1.12 |否 |
|星域大小调整Adjusted Sector |0.5.1 |否 |
|星系检索网络 |2.6.1 |否 |
|星舰传奇 [Starship Legends] |2.1.2 |否 |
|星际帝国 [Interstellar Imperium] |2.5.2 |否 |
|更好的技术挖掘Slightly Better Tech-Mining |2.7.3 |否 |
|更好的殖民地Better Colonies |1.86 |否 |
|泰兰船包 |0.9RC3 |否 |
|海盗拓展 [Underworld] |1.7.1 |否 |
|物流报告Logistics Notifications |1.4.4 |否 |
|空间站任务扩展More Military Missions |0.1.1 |否 |
|自动保存Autosave |1.2 |否 |
|自动指令 |1.1a |否 |
|舰船/武器拓展 [Ship/Weapon Pack] |1.13.0 |否 |
|舰船目录 / 装配编辑器 [~Ship Catalogue / Variant Editor]|1.7.0 |否 |
|舰队行动历史[Fleet Action History] |1.0.8 |否 |
|详细战斗报告[Detailed Combat Results] |5.3.0 |否 |
|趋光拓展 [ApproLightPlus] |0.6.3 |否 |
|趋光议会 [ApproLight] |1.2.0 |否 |
|面板数据补全 |0.96 |否 |

(以上内容由 远行星号 报错信息收集工具 自动生成,生成工具版本 `1.1.2`).
[/md]
    复现步骤:
    进入游戏就报错闪退
    本帖最后由 农工育三业 于 2023-6-19 12:35 编辑

    'data/abilities/hhRemoteSurveyAbility.java', Line 114, Column 18: Assignment conversion not possible from type "java.lang.Object" to type "com.fs.starfarer.api.campaign.PlanetAPI"

    文件我是直接复制的官方api,但是这一行出了个类型转换错误
    具体这一行是这样的(我没改)

            protected List<PlanetAPI> getSurveyableInRange() {
                    List<PlanetAPI> result = getAllPlanetsInRange();
                   
                    Iterator<PlanetAPI> iter = result.iterator();
                    while (iter.hasNext()) {
                            PlanetAPI curr = iter.next();//就是这一行报错了,数据类型不能转换赋值
                            SurveyLevel level = curr.getMarket().getSurveyLevel();
                            if (level != SurveyLevel.SEEN && level != SurveyLevel.NONE) {
                                    iter.remove();
                            }
                    }
                   
                    return result;
            }



    势力巨擘

    发表于 2023-6-19 11:05:54 | 显示全部楼层
    看起来语法是没有问题的欸,你自己手动编译一下看看能不能编译通过?如果能编译过就直接用编译后的文件别让它来给你编译了(
    不过原来这游戏还能直接放java源文件,它在启动时给你编译一下的阿

    点评

    是能直接放java文件,原版的core文件夹里全是这样的文件  详情 回复 发表于 2023-6-19 12:32

    星域军阀

    高级机师

    发表于 2023-6-19 11:06:39 | 显示全部楼层
    原版编译器是这样的
    打包成jar再运行吧

    点评

    又要下eclipse了,这些编译器有一个算一个都特别大  详情 回复 发表于 2023-6-19 12:33

    战列舰长

    发表于 2023-6-19 11:38:30 | 显示全部楼层
    List我这边直接用源文件编译也报错,估计得打包

    点评

    好吧,我觉得还是官方编译器的锅改了半天明明没语法错误结果还是不能用  详情 回复 发表于 2023-6-19 12:31

    势力巨擘

    红花

     楼主| 发表于 2023-6-19 12:31:10 | 显示全部楼层
    Actess 发表于 2023-6-19 11:38
    List我这边直接用源文件编译也报错,估计得打包

    好吧,我觉得还是官方编译器的锅改了半天明明没语法错误结果还是不能用

    势力巨擘

    红花

     楼主| 发表于 2023-6-19 12:32:19 | 显示全部楼层
    钟离云初 发表于 2023-6-19 11:05
    看起来语法是没有问题的欸,你自己手动编译一下看看能不能编译通过?如果能编译过就直接用编译后的文件别让 ...

    是能直接放java文件,原版的core文件夹里全是这样的文件

    点评

    啊?我这starsector-core下全是jar包欸,只不过 starfarer.api包有个同名zip包,里面放了源码……  详情 回复 发表于 2023-6-19 13:31

    势力巨擘

    红花

     楼主| 发表于 2023-6-19 12:33:14 | 显示全部楼层
    cjy4312 发表于 2023-6-19 11:06
    原版编译器是这样的
    打包成jar再运行吧

    又要下eclipse了,这些编译器有一个算一个都特别大

    势力巨擘

    红花

     楼主| 发表于 2023-6-19 12:33:46 | 显示全部楼层
    大伙们的意见是编译打包,我这就去试一试

    势力巨擘

    红花

     楼主| 发表于 2023-6-19 12:35:16 | 显示全部楼层
    好了,先把csv文件改了,重定位到打包的目录里。。。。。

    势力巨擘

    发表于 2023-6-19 13:31:14 | 显示全部楼层
    农工育三业 发表于 2023-6-19 12:32
    是能直接放java文件,原版的core文件夹里全是这样的文件

    啊?我这starsector-core下全是jar包欸,只不过 starfarer.api包有个同名zip包,里面放了源码……
    *滑块验证:

    本版积分规则

    Archiver|手机版|小黑屋|远行星号中文论坛

    GMT+8, 2024-5-17 10:39

    Powered by Discuz! X3.5

    © 2001-2077 Tencent Cloud | Durian Software Studio

    快速回复 返回顶部 返回列表