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: Wed Mar 03 04:02:10 GMT 2021
Powered by FUDForum. Page generated in 0.02742 seconds
|