Home » Newcomers » Newcomers » Type can not be resolved!(help me!)
Type can not be resolved! [message #1419499] |
Mon, 08 September 2014 18:05 |
Matty widdop Messages: 8 Registered: September 2014 |
Junior Member |
|
|
Hello, so I've recently got into java and I'm pretty good with it so I decided to create a plugin for my server that links in with WG and factions, it all works fine but when I try to define the package right at the top of the page I get this error:
The type com.google.gson.Gson cannot be resolved. It is indirectly referenced from required .class files
I have tried to remove the JRE library and re-adding it, but no luck. the code for the class file is as follows:
package me.HexCraft;
import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.Server;
import org.bukkit.block.Block;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
import org.bukkit.event.Event.Result;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.block.Action;
import org.bukkit.event.block.BlockPlaceEvent;
import org.bukkit.event.player.PlayerInteractEntityEvent;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.event.player.PlayerShearEntityEvent;
import org.bukkit.inventory.ItemStack;
import org.bukkit.plugin.PluginManager;
import com.massivecraft.factions.Factions;
import com.massivecraft.factions.cmd.CmdClaim;
public class HexListener
implements Listener
{
private HexRestrict plugin;
public HexListener(HexRestrict plugin)
{
this.plugin = plugin;
plugin.getServer().getPluginManager().registerEvents(this, plugin);
}
@EventHandler(ignoreCancelled=false)
public void onPlayerShear(PlayerShearEntityEvent event)
{
if (event.getEntity().toString() == "CraftSheep") {
event.setCancelled(StopShear(event.getPlayer(), event.getEntity(), event.getEntity().getLocation()));
}
}
@EventHandler(ignoreCancelled=false)
public void onPlayerShear(PlayerInteractEntityEvent event)
{
if (event.getRightClicked().toString() == "CraftSheep") {
event.setCancelled(StopShear(event.getPlayer(), event.getRightClicked(), event.getRightClicked().getLocation()));
} else {
event.setCancelled(StopShear(event.getPlayer(), event.getRightClicked(), event.getRightClicked().getLocation()));
}
}
private boolean StopShear(Player p, Entity e, Location l)
{
if (this.plugin.ItemUseRestrictedInsideOtherClaims.contains(new ItemInfo(p.getItemInHand().getTypeId(), null)))
{
Factions gp = Factions.instance;
CmdClaim claim = gp.dataStore.getClaimAt(l, true, null);
if ((!p.isOp()) &&
(claim != null))
{
String errorMessage = claim.allowBuild(p);
if (errorMessage != null) {
return true;
}
}
}
return false;
}
@EventHandler(ignoreCancelled=false)
public void onPlayerInteract(PlayerInteractEvent event)
{
if ((event.getAction().equals(Action.RIGHT_CLICK_BLOCK)) && (event.hasItem())) {
if (this.plugin.ItemUseRestrictedInsideOtherClaims.Contains(new ItemInfo(event.getItem().getTypeId(), null)))
{
Player player = event.getPlayer();
Location loc = event.getClickedBlock().getLocation();
Factions gp = Factions.instance;
Claim claim = gp.dataStore.getClaimAt(loc, true, null);
if (!player.isOp()) {
if (claim != null)
{
String errorMessage = claim.allowBuild(player);
if (errorMessage != null)
{
event.setUseInteractedBlock(Event.Result.DENY);
event.setUseItemInHand(Event.Result.DENY);
}
}
else
{
Location placedLoc = event.getClickedBlock().getRelative(event.getBlockFace(), 1).getLocation();
claim = gp.dataStore.getClaimAt(placedLoc, true, null);
if (claim != null)
{
String errorMessage = claim.allowBuild(player);
if (errorMessage != null)
{
event.setUseInteractedBlock(Event.Result.DENY);
event.setUseItemInHand(Event.Result.DENY);
return;
}
}
}
}
}
}
if (event.hasItem()) {
if (this.plugin.ItemUseRestrictedInsideOtherClaims.Contains(new ItemInfo(event.getItem().getTypeId(), null)))
{
Player player = event.getPlayer();
Location loc = event.getPlayer().getLocation();
Factions gp = Factions.instance;
Claim claim = gp.dataStore.getClaimAt(loc, true, null);
if ((!player.isOp()) &&
(claim != null))
{
String errorMessage = claim.allowBuild(player);
if (errorMessage != null)
{
event.setUseInteractedBlock(Event.Result.DENY);
event.setUseItemInHand(Event.Result.DENY);
return;
}
}
}
}
}
@EventHandler(ignoreCancelled=true)
public void onPlace(BlockPlaceEvent placeEvent)
{
MaterialInfo blockInfo = this.plugin.BlocksRestrictedOutsideClaims.ContainsReturnName(new MaterialInfo(placeEvent.getBlock().getTypeId(), placeEvent.getBlock().getData(), null));
if (blockInfo != null)
{
Player player = placeEvent.getPlayer();
Block block = placeEvent.getBlock();
Factions gp = Factions.instance;
Claim claim = gp.dataStore.getClaimAt(block.getLocation(), true, null);
if (claim == null) {
if (!player.isOp())
{
placeEvent.getBlockPlaced().setType(Material.AIR);
placeEvent.setBuild(false);
placeEvent.setCancelled(true);
player.sendMessage(ChatColor.RED + "Unable to place " + blockInfo.description + " outside your claimed regions.");
return;
}
}
}
}
}
|
|
|
Re: Type can not be resolved! [message #1419504 is a reply to message #1419499] |
Mon, 08 September 2014 18:16 |
|
The message, "The type com.google.gson.Gson cannot be resolved. It is indirectly referenced from required .class files," means you need to add a library that contains the type, com.google.gson.Gson, to the project's Java Build Path. The message is literally telling you that some other class on the build path already refers to it.
_
Nitin Dahyabhai
Eclipse Web Tools Platform
[Updated on: Mon, 08 September 2014 18:18] Report message to a moderator
|
|
| | | | |
Re: Type can not be resolved! [message #1420159 is a reply to message #1420137] |
Tue, 09 September 2014 15:42 |
Matty widdop Messages: 8 Registered: September 2014 |
Junior Member |
|
|
ok, fixed it and thanks for the help. but now I am getting this error as soon as I fixed the previous: "The method allowBuild(Player) is undefined for the type Object"
the code it below:
package me.HexCraft;
import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.Server;
import org.bukkit.block.Block;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
import org.bukkit.event.Event.Result;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.block.Action;
import org.bukkit.event.block.BlockPlaceEvent;
import org.bukkit.event.player.PlayerInteractEntityEvent;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.event.player.PlayerShearEntityEvent;
import org.bukkit.inventory.ItemStack;
import org.bukkit.plugin.PluginManager;
import com.massivecraft.factions.Factions;
import com.massivecraft.factions.cmd.CmdClaim;
import com.massivecraft.factions.cmd.CmdUnclaim;
public class HexListener
implements Listener
{
private HexRestrict plugin;
public HexListener(HexRestrict plugin)
{
this.plugin = plugin;
plugin.getServer().getPluginManager().registerEvents(this, plugin);
}
@EventHandler(ignoreCancelled=false)
public void onPlayerShear(PlayerShearEntityEvent event)
{
if (event.getEntity().toString() == "CraftSheep") {
event.setCancelled(StopShear(event.getPlayer(), event.getEntity(), event.getEntity().getLocation()));
}
}
@EventHandler(ignoreCancelled=false)
public void onPlayerShear(PlayerInteractEntityEvent event)
{
if (event.getRightClicked().toString() == "CraftSheep") {
event.setCancelled(StopShear(event.getPlayer(), event.getRightClicked(), event.getRightClicked().getLocation()));
} else {
event.setCancelled(StopShear(event.getPlayer(), event.getRightClicked(), event.getRightClicked().getLocation()));
}
}
private boolean StopShear(Player p, Entity e, Location l)
{
if (this.plugin.ItemUseRestrictedInsideOtherClaims.contains(new ItemInfo(p.getItemInHand().getTypeId(), null)))
{
Factions gp = Factions.i;
CmdClaim claim = gp.DataStore.getClaimAt(l, true, null);
if ((!p.isOp()) &&
(claim != null))
{
String errorMessage = ((Object) claim).allowBuild(p);
if (errorMessage != null) {
return true;
}
}
}
return false;
}
@EventHandler(ignoreCancelled=false)
public void onPlayerInteract(PlayerInteractEvent event)
{
if ((event.getAction().equals(Action.RIGHT_CLICK_BLOCK)) && (event.hasItem())) {
if (this.plugin.ItemUseRestrictedInsideOtherClaims.contains(new ItemInfo(event.getItem().getTypeId(), null)))
{
Player player = event.getPlayer();
Location loc = event.getClickedBlock().getLocation();
Factions gp = Factions.i;
CmdClaim claim = gp.dataStore.getClaimAt(loc, true, null);
if (!player.isOp()) {
if (claim != null)
{
String errorMessage = ((Object) claim).allowBuild(player);
if (errorMessage != null)
{
event.setUseInteractedBlock(event.Result.DENY);
event.setUseItemInHand(event.Result.DENY);
}
}
else
{
Location placedLoc = event.getClickedBlock().getRelative(event.getBlockFace(), 1).getLocation();
claim = gp.dataStore.getClaimAt(placedLoc, true, null);
if (claim != null)
{
String errorMessage = claim.allowBuild(player);
if (errorMessage != null)
{
event.setUseInteractedBlock(event.Result.DENY);
event.setUseItemInHand(event.Result.DENY);
return;
}
}
}
}
}
}
if (event.hasItem()) {
if (this.plugin.ItemUseRestrictedInsideOtherClaims.contains(new ItemInfo(event.getItem().getTypeId(), null)))
{
Player player = event.getPlayer();
Location loc = event.getPlayer().getLocation();
Factions gp = Factions.i;
CmdUnclaim claim = gp.dataStore.getClaimAt(loc, true, null);
if ((!player.isOp()) &&
(claim != null))
{
String errorMessage = ((Object) claim).allowBuild(player);
if (errorMessage != null)
{
event.setUseInteractedBlock(event.Result.DENY);
event.setUseItemInHand(event.Result.DENY);
return;
}
}
}
}
}
@EventHandler(ignoreCancelled=true)
public void onPlace(BlockPlaceEvent placeEvent)
{
MaterialInfo blockInfo = this.plugin.BlocksRestrictedOutsideClaims.ContainsReturnName(new MaterialInfo(placeEvent.getBlock().getTypeId(), placeEvent.getBlock().getData(), null));
if (blockInfo != null)
{
Player player = placeEvent.getPlayer();
Block block = placeEvent.getBlock();
Factions gp = Factions.i;
CmdClaim claim = gp.dataStore.getClaimAt(block.getLocation(), true, null);
if (claim == null) {
if (!player.isOp())
{
placeEvent.getBlockPlaced().setType(Material.AIR);
placeEvent.setBuild(false);
placeEvent.setCancelled(true);
player.sendMessage(ChatColor.RED + "Unable to place " + blockInfo.description + " outside your claimed regions.");
return;
}
}
}
}
}
|
|
| | | |
Goto Forum:
Current Time: Tue Sep 24 09:28:27 GMT 2024
Powered by FUDForum. Page generated in 0.09621 seconds
|