<identifier> expected. java
java
Solution
Yes, this is the problem:
public class ClosureBuilder {
cfg = new Config();
...
}
At the top level of a class, you can only have:
- Instance initializer blocks (`{ ... }`)
- Static initializer blocks (`static { ... }`)
- Variable declarations
- Constructor declarations
- Method declarations
- Nested type declarations
- Finalizer declarations
This is none of these. If you meant to declare a variable, you should have done so:
private Config cfg = new Config();
If that's not what you intended to do, you should explain your intention.
EDIT: Once you've fixed that, this compiler error seems pretty clear:
class Config is public, should be declared in a file named Config.java
There are two potential fixes for this:
- Make `Config` non-public
- Move it to a file called `Config.java`
Either should fix that error (potentially revealing more).
Problem
I have this snippet of java code. I am a noob in java.. Error : ``` <identifier> expected cfg = new Config; ``` Code: ``` import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.HashMap; import java.util.HashSet; import java.util.Set; import java.io.*; import java.util.*; import java.util.Properties; public class Config { Properties configFile; public Config() { configFile = new java.util.Properties(); try { configFile.load(this.getClass().getClassLoader().getResourceAsStream("config")); }catch(Exception eta){ eta.printStackTrace(); } } public String getProperty(String key) { String value = this.configFile.getProperty(key); return value; } } public class ClosureBuilder { ``` `cfg = new Config();` ``` private static String JDBC = cfg.getProperty("JDBC"); private static String URL = cfg.getProperty("URL"); private static String DIMENSION_TABLE = cfg.getProperty("DIMENSION_TABLE"); private static String CLOSURE_TABLE = cfg.getProperty("CLOSURE_TABLE"); private static String KEY = cfg.getProperty("KEY"); private static String PARENT_KEY = cfg.getProperty("PARENT_KEY"); private static Object TOP_LEVEL_PARENT_KEY = '0'; private Object topLevel = null; private Set<Object> processedNodes; private PreparedStatement aPst; public static void main(String[] args) throws Exception { ----------- More code -------- ```