![]() |
Цитата:
|
Спрошу и здесь: Ошибка java :484: not a ststement classnotfoundexception
Что бы это значило? |
Цитата:
Цитата с ЗАПА, авторство Лакота Источник: http://dispersalfield.ru/main/index....pic,237.0.html Причин бывает много, назову несколько. Первая - если открыть нужный исходник ОТДЕЛЬНО от других файлов, то некотрые внешние связи будут описаны неправильно. Второе - есть там (почти везде ) "лихая" конструкция проверки существования. Вот так открывается - static java.lang.Class _mthclass$(java.lang.String s) { return java.lang.Class.forName(s); java.lang.ClassNotFoundException classnotfoundexception; classnotfoundexception; throw new NoClassDefFoundError(classnotfoundexception.getMes sage()); } А выгледеть должна так - static java.lang.Class _mthclass$(java.lang.String s) { java.lang.Class class1; try { class1 = java.lang.Class.forName(s); } catch(java.lang.ClassNotFoundException classnotfoundexception) { throw new NoClassDefFoundError(classnotfoundexception.getMes sage()); } return class1; } Жизнь показывает, что эту фигню вообще можно удалить... Это бывает чаще всего... Третье - дефолтное оружие надо переписывать СТОПУДОВО в новую конструкцию. Четвертое - строчка ПРИКРЕПЛЕНИЯ кокпита открывается неправильно , без выделеного - com.maddox.rts.Property.set(class1, "cockpitClass", new java.lang.Class[]{CockpitAN_2.class}); Пятое - Не объявленное окружение в заголовке. Если добавили обращения к внешним классам - потрудитесь добавить описание пакетов. Шестое - СИНТАКСИС и ПУНКТУАЦИЯ... |
Цитата:
|
Цитата:
static java.lang.Class _mthclass$(java.lang.String s) { java.lang.Class class1; try { class1 = java.lang.Class.forName(s); } catch(java.lang.ClassNotFoundException classnotfoundexception) { throw new NoClassDefFoundError(classnotfoundexception.getMes sage()); } return class1; } Потом закройте, сохраните изменения. откройте и берите те коды что вам нужно в новый джава-файл что вы собираете., обязательно сравнивайте с похожим дефолтным самолётом или с теми моими что у вас есть, они почти все адаптированы к последнему патчу. Куски кодов команд требуют так же и прописку в начале джава-файла., вот основные из них: import com.maddox.il2.engine.HierMesh; import com.maddox.JGP.Point3d; import com.maddox.JGP.Tuple3d; import com.maddox.JGP.Vector3d; import com.maddox.il2.ai.*; import com.maddox.il2.ai.air.Pilot; import com.maddox.il2.ai.air.Maneuver; import com.maddox.il2.ai.air.Pilot; import com.maddox.il2.ai.RangeRandom; import com.maddox.il2.ai.Wing; import com.maddox.il2.ai.World; import com.maddox.il2.engine.*; import com.maddox.il2.engine.HierMesh; import com.maddox.il2.engine.Orientation; import com.maddox.il2.fm.*; import com.maddox.il2.fm.FlightModel; import com.maddox.il2.fm.FlightModelMain; import com.maddox.il2.fm.Turret; import com.maddox.il2.game.Main3D; import com.maddox.il2.game.AircraftHotKeys; import com.maddox.il2.game.HUD; import com.maddox.il2.objects.sounds.SndAircraft; import com.maddox.il2.objects.sounds.Voice; import com.maddox.il2.objects.weapons.*; import com.maddox.il2.objects.Wreckage; import com.maddox.il2.objects.weapons.BombSC50; import com.maddox.util.HashMapInt; import java.io.IOException; import java.util.ArrayList; import java.util.Random; import com.maddox.rts.Property; import com.maddox.rts.*; Таких ссылок на коды ещё много есть. Если всё сделать тщательно - компиляция будет без проблемм. Но давайте научимся компилировать простые классы, изменять в них вооружение, понимать простые коды из дефолтных классов. Опять написал много - хочеться помочь просто. :ok: |
Цитата:
*********** * AIR.INI * *********** PA18 air.PA18 usa01 SUMMER *********************** * PLANE_RU.PROPERTIES * *********************** PA18 Piper PA-18 Super Cub, 1949 http://s019.radikal.ru/i604/1501/23/9c9a0cbcfbf5.jpg то не желают. Видимо не научился еще. |
Цитата:
И на карту ссылку - пожалуйста подарите. |
Цитата:
Цитата:
|
Класс компелиться нормально, хешируется как положено. Запись в айр ини вроде правильную делаю. На запуске вижу такую хрень:
[17:41:07] FM called 'FlightModels/JB.fmd:J_B' is being loaded from File: 'j_b' [17:41:07] FM called 'FlightModels/JB.fmd:J_B' is being loaded from Alternative File: 'j_b' [17:41:07] FM called 'FlightModels/JB.fmd:J_B' is being loaded from File: 'j_b' [17:41:07] FM called 'FlightModels/JB.fmd:J_B' is being loaded from Alternative File: 'j_b' [17:41:07] FM called 'FlightModels/L-39C.fmd:L39' is being loaded from File: 'l39' [17:41:07] FM called 'FlightModels/L-39C.fmd:L39' is being loaded from Alternative File: 'l39' [17:41:07] Main begin: PlMisAir: class 'air.B_45A' not found [17:41:07] java.lang.RuntimeException: PlMisAir: class 'air.B_45A' not found [17:41:07] at com.maddox.il2.gui.GUIQuick.fillArrayPlanes(GUIQui ck.java:1527) [17:41:07] at com.maddox.il2.gui.GUIQuick.<init>(GUIQuick.java:2 006) [17:41:07] at com.maddox.il2.gui.GUI.create(GUI.java:160) [17:41:07] at com.maddox.il2.game.Main3D.beginApp(Main3D.java:18 85) [17:41:07] at com.maddox.il2.game.Main3D.beginApp(Main3D.java:15 79) [17:41:07] at com.maddox.il2.game.MainWin3D.beginApp(MainWin3D.j ava:212) [17:41:07] at com.maddox.il2.game.Main.exec(Main.java:432) [17:41:07] at com.maddox.il2.game.GameWin3D.main(GameWin3D.java: 235) [25.01.2015 17:41:07] -------------- END log session ------------- Что это может быть? |
Может то быть, например, отсутствие класса B_45,
если в каком-то другом классе от обозначен как... public class <name> extends B_45 |
Цитата:
Цитата:
|
Джава-файл в студию., эта проблемма решаеться не сложно, такое проходил.
|
Вложений: 1
Цитата:
Цитата:
// Decompiled by DJ v3.10.10.93 Copyright 2007 Atanas Neshkov Date: 25.01.2015 21:12:11 // Home Page: http://members.fortunecity.com/neshkov/dj.html http://www.neshkov.com/dj.html - Check often for new version! // Decompiler options: packimports(3) // Source File Name: B_45A.java package com.maddox.il2.objects.air; import com.maddox.JGP.Tuple3d; import com.maddox.il2.ai.BulletEmitter; import com.maddox.il2.ai.World; import com.maddox.il2.ai.air.Pilot; import com.maddox.il2.engine.*; import com.maddox.il2.fm.*; import com.maddox.il2.game.AircraftHotKeys; import com.maddox.il2.game.HUD; import com.maddox.il2.objects.sounds.SndAircraft; import com.maddox.il2.objects.weapons.Bomb; import com.maddox.il2.objects.weapons.BombJATO; import com.maddox.rts.*; import com.maddox.util.HashMapInt; import java.io.IOException; import java.util.ArrayList; import java.util.Random; // Referenced classes of package com.maddox.il2.objects.air: // B_45X, PaintSchemeBMPar02, TypeBomber, AircraftLH, // Aircraft, NetAircraft public class B_45A extends B_45X implements TypeBomber { public B_45A() { bHasBoosters = true; boosterFireOutTime = -1L; bpos = 1.0F; bcurpos = 1.0F; btme = -1L; bSightAutomation = false; bSightBombDump = false; fSightCurDistance = 0.0F; fSightCurForwardAngle = 0.0F; fSightCurSideslip = 0.0F; fSightCurAltitude = 3000F; fSightCurSpeed = 200F; fSightCurReadyness = 0.0F; } public void destroy() { doCutBoosters(); super.destroy(); } public void doFireBoosters() { Eff3DActor.New(this, findHook("_Booster1"), null, 1.0F, "3DO/Effects/Rocket/RocketSmokeWhite.eff", 30F); Eff3DActor.New(this, findHook("_Booster2"), null, 1.0F, "3DO/Effects/Rocket/RocketSmokeWhite.eff", 30F); } public void doCutBoosters() { for(int i = 0; i < 2; i++) if(booster[i] != null) { booster[i].start(); booster[i] = null; } } public void onAircraftLoaded() { super.onAircraftLoaded(); for(int i = 0; i < 2; i++) try { booster[i] = new BombJATO(); ((Actor) (booster[i])).pos.setBase(this, findHook("_BoosterH" + (i + 1)), false); ((Actor) (booster[i])).pos.resetAsBase(); booster[i].drawing(true); } catch(Exception exception) { debugprintln("Structure corrupt - can't hang Starthilferakete.."); } } static { Class class1 = com.maddox.il2.objects.air.B_45A.class; new NetAircraft.SPAWN(class1); Property.set(class1, "iconFar_shortClassName", "B-45A"); Property.set(class1, "meshName", "3DO/Plane/B-45A(Multi1)/hier.him"); Property.set(class1, "PaintScheme_us", new PaintSchemeBMPar02()); Property.set(class1, "yearService", 1943F); Property.set(class1, "yearExpired", 1956.6F); Property.set(class1, "FlightModel", "FlightModels/JB.fmd:J_B"); Property.set(class1, "cockpitClass", new Class[] { com.maddox.il2.objects.air.CockpitJetBomber.class, com.maddox.il2.objects.air.CockpitJetBomber_Bombar dier.class }); |
Ну и? Ни кто не знает ответа?
|
Цитата:
Попробуй так: Property.set(class1, "cockpitClass", new java.lang.Class[] { com.maddox.il2.objects.air.CockpitJetBomber.class, com.maddox.il2.objects.air.CockpitJetBomber_Bombardier.class }); |
Цитата:
С уважением |
У меня всё получилось - всё грузится, краша нет. Нужно - как я уже неоднократно писал - сделать для нового самолёта все свои классы, которыми он пользуется и очень тщательно проверить на совместимость. Так же в Иле должны присутствовать все классы вооружения, в частности - бомбы Джатко, которые упоминаються в коде класса В-45А.
-------------------------------------- Дополнение: папку с модом нужно именовать только аглицкими бук(в)ами. :umora: -------------------------------------- Такие мысли! |
Ракеты цель захватывать отказываются. Почему?
|
Активацию нажимаешь(В)?
|
Цитата:
|
Текущее время: 18:47. Часовой пояс GMT +3. |
Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot