Jump to content
  • Advertisement
Sign in to follow this  

Java package problem

This topic is 2337 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I'm having a problem creating and using my own packages(and subpackages) for a game I'm writing in Java. I'd also like to use a package that allows for .mp3 audio files rather than the massive .wav .
I know the declaration is:

package name; (First line)
..rest of code

I've tried fiddling with the class path (spelt "classpath" , does case matter?) for both the system and user, and also compiled with a set class path, but didn't get it working. I'm using Notepad++, so I'm compiling in command prompt. ( I know IDEs are important and improve efficiency but I want to learn the bones of the language first and know the imports I'm dealing with rather than have it fill it in for me as I type).

So what am I doing wrong? I think it's something to do with the classpath so could someone give me a step by step for setting it up? Otherwise, am I missing something else?

Also, slightly related: Any tips for game programming in Java, besides don't do it ( tongue.png ), or game programming in general? How can I make sure my game will use as little memory as possible, and run as quickly as possible? I've made all my images point to the same static images rather than create a new one for each object (this really, really helped) , and used bytes instead of other primitives when possible. Specifically I'm programming a strictly 2d game if there's specific pointers for that. Edited by camcd

Share this post

Link to post
Share on other sites
Hey camcd,

I'm not sure what the exact problem is with your packages but let me tell you how mine works.
First of I'm using an IDE (eclipse to be exact).

When creating my packages I make sure I have a main package (which is the name of the game) and then the sub package.
For example:


Every single class that has anything to do with entities will be put in the entities package.

package gamename.entities;

the hierarchy of the files should be something like:








As for other tips you might want to use 2D libraries like lwjgl or slick2D (which is a "fork" or not sure how its called from lwjgl).
Oh and i suppose you could find some great tutorials on youtube (instead of plain text websites).

If you use lwjgl check this link. He has some amazing tutorials.


Share this post

Link to post
Share on other sites
To reiterate the most important part of goowik's post: if you want people to help you, give them the tools to do so. You didn't say what you have tried and you haven't described the error, just that it does not seem to work. I could add half hour worth of post here trying to add more possible gotchas but I don't have the time right now and most of it would be wasted.

Share this post

Link to post
Share on other sites
I thought I was (though I did ramble about random things, just a little excited tongue.png ), sorry. I'm having trouble importing and using other packages besides those in java.* or javax.* .

When I create my own package, I get an error saying : "package "x" doesn't exist" when I try to compile. The class can even be in the same directory as main.

The current organization (or lack of) of my program is as follows

MyGame Folder:
class x, class x1, class x2, ... class xn .

So when I do javac *.java it looks in the current directory (MyGame) that contains my main class and finds all the other classes.

I want to add a folder containing classes related to one thing and all the classes in that folder would be in the same package , so it would be:

MyGame Folder:
MyPackage 1:
class p, class p1 ... class pn

class x

Where I could import one of the "p" classes from class x (which would contain main) with a statement like:

import MyGame.MyPackage1.class p;

and can still compile with javac . I want to avoid the use of an IDE before I know how to do it myself. Edited by camcd

Share this post

Link to post
Share on other sites
Alright, sorry to bother you guys. I got it working. My classpath wasn't set correctly and I didn't write the package statement properly. Thanks.

Share this post

Link to post
Share on other sites
I'm too rusty with the command line for the compiler but http://docs.oracle.com/javase/1.4.2/docs/tooldocs/windows/javac.html seems to describe what you need as the first example.

That aside, your import statement is wrong like this. It would have to be either
import MyGame.MyPackage1.p;
import MyGame.MyPackage1.*;

Share this post

Link to post
Share on other sites
Sign in to follow this  


Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!