Exception in thread "main" javax.persistence.PersistenceException: No Persistence provider for EntityManager named automovel Não consigo resolver esse erro

Já faz um tempo que estou tentando criar uma aplicação de teste em JPA com hibernate. Estou seguindo o guia pratico dessa apostila Online : https://www.caelum.com.br/apostila-java-web/uma-introducao-pratica-ao-jpa-com-hibernate/#exerccios-configurando-o-jpa-e-gerando-o-schema-do-banco.
Mas sempre o msm erro :

:Exception in thread "main" javax.persistence.PersistenceException: No Persistence provider for EntityManager named automovel

Aqui esta o meu persistence.xml:

<?xml version="1.0" encoding="UTF-8"?> <persistence xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd" version="2.0"> <persistence-unit name="automovel" transaction-type ="RESOURCE_LOCAL"> <provider>org.hibernate.ejb.HibernatePersistence</provider> <class>br.com.TesteJPA.modelo.Automovel</class> <exclude-unlisted-classes>true</exclude-unlisted-classes> <properties> <property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver" /> <property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost/dbautomovel" /> <property name="javax.persistence.jdbc.user" value="root" /> <property name="javax.persistence.jdbc.password" value="" /> <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" /> <property name="hibernate.show_sql" value="true" /> <property name="hibernate.format_sql" value="true" /> <property name="hibernate.hbm2ddl.auto" value="create" /> </properties> </persistence-unit> </persistence>

Aqui esta a mina classe Automovel :

package br.com.TesteJPA.modelo;

import javax.persistence.*;

@Entity
public class Automovel {

@Id @GeneratedValue
private int id;
private String marca;
private String modelo;
private String placa;

public String getMarca() {
	return marca;
}
public void setMarca(String marca) {
	this.marca = marca;
}
public String getModelo() {
	return modelo;
}
public void setModelo(String modelo) {
	this.modelo = modelo;
}
public String getPlaca() {
	return placa;
}
public void setPlaca(String placa) {
	this.placa = placa;
}

}

Main da minha aplicação:

package br.com.TesteJPA.main;

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;

import br.com.TesteJPA.modelo.Automovel;

public class Main {

public static void main(String[] args) {
	// TODO Auto-generated method stub
	Automovel a = new Automovel();
	a.setMarca("fiat");
	a.setModelo("palio");
	a.setPlaca("xxx-1111");
	
	EntityManagerFactory  emf = 
			Persistence.createEntityManagerFactory("automovel");
	
	EntityManager em = emf.createEntityManager();
	
	em.getTransaction().begin();
	em.persist(a);
	em.getTransaction().commit();
	em.close();
	
	emf.close();
	
}

}

E a imagem das pastas do meu projeto:

O que Estou fazendo de errado?

Acho que está faltando o jar da persistence-api na sua lib.