[HIBERNATE] - mappedBy referenced property unknown

Boa tarde

Estou com o problema abaixo e não estou entenden o motivo do mesmo.

Li diversas vezes o meu código porém não consegui identifica-lo.

Poderiam me ajudar?

ERRO:

Unknown mappedBy in: br.com.Muambyte.carrinho.Carrinho.cliente, referenced property unknown: br.com.Muambyte.cliente.Cliente.carrinho

Classes:

package br.com.Muambyte.carrinho;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.IdClass;
import javax.persistence.OneToOne;

import br.com.Muambyte.cliente.Cliente;

@Entity
@IdClass(CarrinhoPK.class)
public class Carrinho {

//MEMBROS
@Id
private long produto_id;
@Id
private String email;
@Column(columnDefinition="int default 1")
private int quantidade;
@Column(columnDefinition="double default 0")
private double valorTotal;

//MEMBROS ESTRANGEIROS
@OneToOne(mappedBy="carrinho",cascade=CascadeType.ALL)
private Cliente cliente;


//GETTERS AND SETTERS
public long getProduto_id() {
	return produto_id;
}

public void setProduto_id(long produto_id) {
	this.produto_id = produto_id;
}

public String getEmail() {
	return email;
}

public void setEmail(String email) {
	this.email = email;
}

public int getQuantidade() {
	return quantidade;
}

public void setQuantidade(int quantidade) {
	this.quantidade = quantidade;
}

public double getValorTotal() {
	return valorTotal;
}

public void setValorTotal(double valorTotal) {
	this.valorTotal = valorTotal;
}

public Cliente getCliente() {
	return cliente;
}

public void setCliente(Cliente cliente) {
	this.cliente = cliente;
}

}

E

package br.com.Muambyte.cliente;

import javax.persistence.CascadeType;
import javax.persistence.OneToOne;

import br.com.Muambyte.carrinho.Carrinho;
import br.com.Muambyte.usuario.UsuarioNegocio;

public class Cliente extends UsuarioNegocio{

//MEMBROS
@OneToOne(cascade=CascadeType.ALL)
private Carrinho carrinho;

//CONSTRUTORES
public Cliente(){
	super();
}


//GETTERS AND SETTERS
public Carrinho getCarrinho() {
	return carrinho;
}

public void setCarrinho(Carrinho carrinho) {
	this.carrinho = carrinho;
}

}

Em um relacionamento bidirecional o mappedBy serve para identificar ou apontar quem será o dono do relacionamento, Logo você não pode marcar as duas classes como mappedBy.

Mas eu só mapeei uma com mappedby