Jump to content
  • 0

[help]compile error


Question

Posted

    [javac] Compiling 1306 source files to D:\source\build\classes
    [javac] D:\source\java\net\sf\l2j\gameserver\handler\voicedcommandhandlers\Q
uizCmd.java:11: error: QuizCmd is not abstract and does not override abstract me
thod useVoicedCommand(String,L2PcInstance) in IVoicedCommandHandler
    [javac] public class QuizCmd implements IVoicedCommandHandler
    [javac]        ^
    [javac] D:\source\java\net\sf\l2j\gameserver\handler\voicedcommandhandlers\Q
uizCmd.java:16: error: method does not override or implement a method from a sup
ertype
    [javac]        @Override
    [javac]        ^    [javac] 2 errors

 

 

the QuizCmd.java

 

 

package net.sf.l2j.gameserver.handler.voicedcommandhandlers;


import net.sf.l2j.gameserver.handler.IVoicedCommandHandler;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.model.entity.QuizEvent;


/**
+ * @author Pauler
**/


public class QuizCmd implements IVoicedCommandHandler
{
      
       public static final String[] VOICED_COMMANDS = { "quiz", "pauler" };
      
       @Override
       public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target)
       {
               if (command.equalsIgnoreCase("quiz")) {
                      
                       if (QuizEvent.isRunning()) {
                              
                               QuizEvent.checkAnswer(target, activeChar);
                               activeChar.sendMessage("Your answer has been submitted.");
                              
                       }else{
                              
                               activeChar.sendMessage("Quiz event is not running right now.");
                              
                       }
                      
               }
              
               if (command.equalsIgnoreCase("pauler")) {
                      
                       activeChar.sendMessage("Quiz event by pauler.");
                      
               }
              
               return false;
       }
      
       @Override
       public String[] getVoicedCommandList()
       {
               return VOICED_COMMANDS;
       }
      
}

 

 

can any1 help?

10 answers to this question

Recommended Posts

  • 0
Posted

That @override macro tells java that the object you're in is taking over a method in the object you extended. It'll stop the compiler if it can't find the method it's overriding. Maybe just remove @override? Or should it be overriding something? In which case you've implemented it incorrectly or it's just a mistake.

  • 0
Posted

now have this error:

D:\source>cmd
Microsoft Windows [Version 6.1.7600]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

D:\source>ant
Buildfile: D:\source\build.xml

clean:
   [delete] Deleting directory D:\source\build

checkRequirements:
     [echo] Verification of your JDK version.

version:
     [echo] aCis gameserver revision: exported

init:
    [mkdir] Created dir: D:\source\build
    [mkdir] Created dir: D:\source\build\classes
    [mkdir] Created dir: D:\source\build\dist
    [mkdir] Created dir: D:\source\build\dist\login
    [mkdir] Created dir: D:\source\build\dist\gameserver

compile:
    [javac] Compiling 1306 source files to D:\source\build\classes
    [javac] D:\source\java\net\sf\l2j\gameserver\handler\VoicedCommandHandler.ja
va:22: error: package net.sf.l2j.handler.voicedcommandhandlers does not exist
    [javac] import net.sf.l2j.handler.voicedcommandhandlers.QuizCmd;
    [javac]                                                ^
    [javac] D:\source\java\net\sf\l2j\gameserver\handler\VoicedCommandHandler.ja
va:37: error: cannot find symbol
    [javac]             registerVoicedCommandHandler(new QuizCmd());
    [javac]                                              ^
    [javac]   symbol:   class QuizCmd
    [javac]   location: class VoicedCommandHandler
    [javac] D:\source\java\net\sf\l2j\gameserver\handler\voicedcommandhandlers\Q
uizCmd.java:37: error: method checkAnswer in class QuizEvent cannot be applied t
o given types;
    [javac]                                QuizEvent.checkAnswer(activeChar);
    [javac]                                         ^
    [javac]   required: String,L2PcInstance
    [javac]   found: L2PcInstance
    [javac]   reason: actual and formal argument lists differ in length
    [javac] 3 errors

BUILD FAILED
D:\source\build.xml:54: Compile failed; see the compiler error output for detail
s.

Total time: 18 seconds

D:\source>ant
Buildfile: D:\source\build.xml

clean:
   [delete] Deleting directory D:\source\build

checkRequirements:
     [echo] Verification of your JDK version.

version:
     [echo] aCis gameserver revision: exported

init:
    [mkdir] Created dir: D:\source\build
    [mkdir] Created dir: D:\source\build\classes
    [mkdir] Created dir: D:\source\build\dist
    [mkdir] Created dir: D:\source\build\dist\login
    [mkdir] Created dir: D:\source\build\dist\gameserver

compile:
    [javac] Compiling 1306 source files to D:\source\build\classes
    [javac] D:\source\java\net\sf\l2j\gameserver\handler\voicedcommandhandlers\Q
uizCmd.java:37: error: method checkAnswer in class QuizEvent cannot be applied t
o given types;
    [javac]                                QuizEvent.checkAnswer(activeChar);
    [javac]                                         ^
    [javac]   required: String,L2PcInstance
    [javac]   found: L2PcInstance
    [javac]   reason: actual and formal argument lists differ in length
    [javac] 1 error

BUILD FAILED
D:\source\build.xml:54: Compile failed; see the compiler error output for detail
s.

Total time: 13 seconds

D:\source>

  • 0
Posted

I was just going to recommend that you go look at the interface function and make sure you check if the arguments match, but the post earlier:

 

remove "String target" argument

 

Read your post a bit better than me.

 

In the function

public boolean useVoicedCommand(String command, L2PcInstance activeChar, String target)

 

You added the String target argument. Because this doesn't match the interface definition you've actually made a completely different function. The @override macro is reporting an error because that definition doesn't exist in the interface.

 

  • 0
Posted

By the time you use one of my shares you can also PM me.

 

In case this is still unsolved, the error occurs because the pack you use doesn't contain one of the overriden methods I used.

 

You are propably missing the whole voiced command feature.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Posts

    • Only 3 days left and we'll start with some events, you can check our Discord for more info!
    • Tired of frantically switching between windows trying to find that specific Warlock who should be casting saves? Forgot which server you left your Warsmith on? This mod solves these problems! What it does: Turns the boring window title into an information panel: Server Name - Character Name [Class] Real-life examples: - ServerName - HardcoreFarm [Spoilerr] (who's been spoiling for 3 months already) - ServerName - ClericHelper [Buffer] (eternal buffer on standby) - ServerName - MainChar [Gladiator] (main character who's always AFK) Why you need this: For multiboxers - to avoid confusing where the DD is and where the healer is For the forgetful - if your memory is like a goldfish For streamers - viewers immediately see who's on screen For adults - when playing at work and need to quickly hide the window DLL only - no Interface files needed Installation (more complicated than making tea): 1. Download the DLL 2. Drop it into the System folder 3. Launch the client 4. Be amazed how you lived without this before! Purchase Conditions: Price: 100$ Payment Method: USDT. How to Buy: Contact me on Telegram: @kiselevwv for a quick response. I will answer all your questions and provide additional information if needed. I guarantee functionality at the moment of sale and prompt assistance with setup after purchase.
    • I agree, l2damage crap to compare to l2java which was the father of pvp servers and till this days people playing there for good time.
    • 📝 Registration — Account Registration Creating a new player account. Usually includes: login password password confirmation email Result: a new record is created in the accounts table (loginserver). 🔑 Change Password — Password Change The player changes the password knowing the current one. Required: current password new password new password confirmation Result: the password field is updated in the accounts table. ♻️ Password Recovery — Password Reset If the player forgot the password. Implementation only via email: the player enters their login, email the system sends an email with a link or code the player opens the link / enters the code sets a new password Result: the password is updated in the accounts table.   All fields are validated (required, format, length, uniqueness, security checks).   Price: 80$   and i can rewrite script for PTS server.   Contacts:   Telegram Discord
  • Topics

×
×
  • Create New...

Important Information

This community uses essential cookies to function properly. Non-essential cookies and third-party services are used only with your consent. Read our Privacy Policy and We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue..