Spring FileNotFoundException obwohl Datei da ist

Bitte aktiviere JavaScript!
Hallo,

ich arbeite mich momentan etwas in die Webentwicklung mit Java (Spring, Struts, JPA, Hibernate, Tomcat) ein. Bisher lief alles super, bis ich eine neue DAO Klasse mit Repository erstellt habe. Nachdem ich die drei Dateien erstellt habe, ließ sich die Anwendung nicht mehr deployen. Ich nutze diese Klassen bisher noch nicht. Lösche ich die Dateien einfach aus dem Projekt, läuft alles wunderbar. Interessant ist, dass die .class Datei im out Ordner genau an der Stelle existiert, an der sie gesucht wird.
Annotations funktionieren (eigentlich). Zumindest bei 8 weiteren dieser Klassensets funktionieren sie problemlos...
Ich stehe hier seit zwei Stunden auf dem Schlauch, ich hoffe jemand von euch kann mir helfen. Nachfolgend noch die Informationen, von denen ich glaube, dass sie wichtig sein könnten. Falls ihr mehr braucht, sagt einfach bescheid.

Code:
org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [de.myCompany.ticketSystem.domain.ticketTask.TaskRepositoryImpl] for bean with name 'taskRepositoryImpl' defined in file [/Users/.../Ticketsystem/out/artifacts/Ticketsystem_Web_exploded/WEB-INF/classes/de/myCompany/ticketSystem/domain/TicketTask/TaskRepositoryImpl.class]; nested exception is java.lang.ClassNotFoundException: de.myCompany.ticketSystem.domain.ticketTask.TaskRepositoryImpl
    at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1357)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.determineTargetType(AbstractAutowireCapableBeanFactory.java:629)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.predictBeanType(AbstractAutowireCapableBeanFactory.java:597)
    at org.springframework.beans.factory.support.AbstractBeanFactory.isFactoryBean(AbstractBeanFactory.java:1450)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:420)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:390)
    at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:86)
    at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:681)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:523)
    at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:444)
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:326)
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:107)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4745)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5207)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:752)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:728)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
    at org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1736)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
    at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
    at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:482)
    at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:431)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
    at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
    at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1471)
    at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:76)
    at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1312)
    at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1404)
    at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:832)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:323)
    at sun.rmi.transport.Transport$1.run(Transport.java:200)
    at sun.rmi.transport.Transport$1.run(Transport.java:197)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
    at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:568)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$256(TCPTransport.java:683)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.ClassNotFoundException: de.myCompany.ticketSystem.domain.ticketTask.TaskRepositoryImpl
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1291)
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1119)
    at org.springframework.util.ClassUtils.forName(ClassUtils.java:250)
    at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:394)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doResolveBeanClass(AbstractBeanFactory.java:1402)
    at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1349)
    ... 56 common frames omitted
18:54:30.859 [RMI TCP Connection(2)-127.0.0.1] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'org.springframework.context.annotation.internalConfigurationAnnotationProcessor'
18:54:30.859 [RMI TCP Connection(2)-127.0.0.1] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating instance of bean 'org.springframework.context.annotation.internalConfigurationAnnotationProcessor'
18:54:30.875 [RMI TCP Connection(2)-127.0.0.1] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Eagerly caching bean 'org.springframework.context.annotation.internalConfigurationAnnotationProcessor' to allow for resolving potential circular references
18:54:30.877 [RMI TCP Connection(2)-127.0.0.1] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Finished creating instance of bean 'org.springframework.context.annotation.internalConfigurationAnnotationProcessor'
18:54:30.955 [RMI TCP Connection(2)-127.0.0.1] WARN org.springframework.web.context.support.XmlWebApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanDefinitionStoreException: Failed to parse configuration class [de.myCompany.ticketSystem.domain.ticketTask.TaskRepositoryImpl]; nested exception is java.io.FileNotFoundException: class path resource [de/myCompany/ticketSystem/domain/ticketTask/TaskRepositoryImpl.class] cannot be opened because it does not exist
18:54:30.955 [RMI TCP Connection(2)-127.0.0.1] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Destroying singletons in org.s[email protected]8c180ed: defining beans [mvcContentNegotiationManager,org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping,mvcCorsConfigurations,org.springframework.format.support.FormattingConversionServiceFactoryBean#0,org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter,mvcUriComponentsContributor,org.springframework.web.servlet.handler.MappedInterceptor#0,org.springframework.web.servlet.mvc.method.annotation.ExceptionHandlerExceptionResolver#0,org.springframework.web.servlet.mvc.annotation.ResponseStatusExceptionResolver#0,org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver#0,org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping,org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter,org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter,taskRepositoryImpl,companyRepositoryImpl,listEntryRepositoryImpl,logRepositoryImpl,personRepositoryImpl,ticketRepositoryImpl,ticketNoteRepositoryImpl,userRepositoryImpl,accountServiceImpl,ticketServiceImpl,org.springframework.context.annotation.internalConfigurationAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequiredAnnotationProcessor,org.springframework.context.annotation.internalCommonAnnotationProcessor,org.springframework.context.annotation.internalPersistenceAnnotationProcessor,org.springframework.context.event.internalEventListenerProcessor,org.springframework.context.event.internalEventListenerFactory,dataSource,entityManagerFactory,transactionManager,tilesConfigurer,org.springframework.transaction.config.internalTransactionalEventListenerFactory,org.springframework.aop.config.internalAutoProxyCreator,org.springframework.transaction.annotation.AnnotationTransactionAttributeSource#0,org.springframework.transaction.interceptor.TransactionInterceptor#0,org.springframework.transaction.config.internalTransactionAdvisor,org.springframework.context.annotation.ConfigurationClassPostProcessor.importAwareProcessor,org.springframework.context.annotation.ConfigurationClassPostProcessor.enhancedConfigurationProcessor]; root of factory hierarchy
18:54:30.960 [RMI TCP Connection(2)-127.0.0.1] ERROR org.springframework.web.context.ContextLoader - Context initialization failed
org.springframework.beans.factory.BeanDefinitionStoreException: Failed to parse configuration class [de.myCompany.ticketSystem.domain.ticketTask.TaskRepositoryImpl]; nested exception is java.io.FileNotFoundException: class path resource [de/myCompany/ticketSystem/domain/ticketTask/TaskRepositoryImpl.class] cannot be opened because it does not exist
    at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:187)
    at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:324)
    at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:246)
    at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:273)
    at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:98)
    at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:681)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:523)
    at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:444)
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:326)
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:107)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4745)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5207)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:752)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:728)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
    at org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1736)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
    at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
    at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:482)
    at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:431)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
    at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
    at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1471)
    at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:76)
    at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1312)
    at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1404)
    at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:832)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:323)
    at sun.rmi.transport.Transport$1.run(Transport.java:200)
    at sun.rmi.transport.Transport$1.run(Transport.java:197)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
    at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:568)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$256(TCPTransport.java:683)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.FileNotFoundException: class path resource [de/myCompany/ticketSystem/domain/ticketTask/TaskRepositoryImpl.class] cannot be opened because it does not exist
    at org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:172)
    at org.springframework.core.type.classreading.SimpleMetadataReader.<init>(SimpleMetadataReader.java:50)
    at org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:98)
    at org.springframework.core.type.classreading.CachingMetadataReaderFactory.getMetadataReader(CachingMetadataReaderFactory.java:102)
    at org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:93)
    at org.springframework.context.annotation.ConfigurationClassParser.asSourceClass(ConfigurationClassParser.java:640)
    at org.springframework.context.annotation.ConfigurationClassParser.asSourceClass(ConfigurationClassParser.java:598)
    at org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass(ConfigurationClassParser.java:235)
    at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:204)
    at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:173)
    ... 54 common frames omitted

Java:
package de.myCompany.ticketSystem.domain.ticketTask;

import de.myCompany.ticketSystem.domain.ticket.Ticket;
import de.myCompany.ticketSystem.domain.user.User;
import lombok.Getter;
import lombok.Setter;

import javax.persistence.*;
import java.util.Date;

@Getter
@Setter
@Entity
public class Task
{
    //region variables
    @Id
    @GeneratedValue (strategy = GenerationType.IDENTITY, generator = "ticketTask_seq")
    @SequenceGenerator (name = "ticketTask_seq", sequenceName = "ticketTask_sequence", allocationSize = 1)
    private Long id;

    @Basic
    private String subject;

    @Basic
    private String text;

    @Basic
    private Date timestmpCreationDate;

    @Basic
    private Date timestmpLastEdit;

    @Basic
    private Date timestmpDue;

    @Basic
    private Date timestmpResolved;

    @Basic
    private Boolean isResolved = false;

    @ManyToOne
    private User user; // <-- has to complete the task

    @ManyToOne
    private Ticket ticket;
    //endregion

    //region methods

    @Override
    public String toString ()
    {
        return ticket.getId() + "." + id + " " + subject;
    }

    //endregion

    //region constructors
    //endregion
}

Java:
package de.myCompany.ticketSystem.domain.ticketTask;

import java.util.List;

public interface TaskRepository
{
    void saveTicketTask (Task ticketTask);

    List<Task> getTicketTasks (Long ticketID);

    List<Task> getTicketTasks (Long userID, Long ticketID);
}

Java:
package de.myCompany.ticketSystem.domain.ticketTask;

import org.springframework.stereotype.Repository;

import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import java.util.List;

@Repository
public class TaskRepositoryImpl implements TaskRepository
{
    //region variables
    @PersistenceContext
    private EntityManager entityManager;
    //endregion

    //region methods

    @Override
    public void saveTicketTask (Task ticketTask)
    {
        if (ticketTask.getId() == null) entityManager.persist(ticketTask);
        else entityManager.merge(ticketTask);
    }

    @Override
    public List<Task> getTicketTasks (Long ticketID)
    {
        return entityManager.createQuery(
                "SELECT ticketTask FROM Task ticketTask WHERE ticketTask.ticket.id = :tid ORDER BY " +
                        "ticketTask.timestmpCreationDate",
                Task.class).setParameter("tid", ticketID).getResultList();
    }

    @Override
    public List<Task> getTicketTasks (Long userID, Long ticketID)
    {
        return entityManager.createQuery(
                "SELECT ticketTask FROM Task ticketTask WHERE ticketTask.user.id = :uid AND ticketTask.ticket"
                        + ".id = :tid ORDER BY ticketTask.timestmpCreationDate",
                Task.class).setParameter("uid", userID).setParameter("tid", ticketID).getResultList();
    }

    //endregion

    //region constructors
    //endregion
}

Und so hab ich Spring gesagt, dass es nach Beans suchen soll:
Java:
<context:component-scan base-package="de.myCompany.ticketSystem"/>
Ich danke euch im Voraus für eure Hilfe und wünsche schonmal einen schönen Abend.
 
Danke für die schnelle Antwort.
Ich schriebe die Anwendung in IntelliJ und starte direkt über die IDE den Tomcat Server und deploye den Spaß. Ich nutze aktuell Tomcat 8.0.14, aber ich denke das dürfte nebensächlich sein, da die Anwendung ja problemlos funktioniert, wenn ich die drei Klassen lösche...
Es gibt auch keine Elemente, die ich noch in den WEB-INF Ordner packen müsste (oder könnte).
Die gesuchten Dateien liegen ja wie gesagt als .class Datei kompiliert vor und werden auch neu kompiliert, wenn ich den Output Ordner lösche.
 
Ich würde da fast das Deployment über IntelliJ als Fehlerquelle vermuten. Wie sieht denn deine Runner-Configuration für den Tomcat in IntelliJ aus?

Edit: Probier mal das Deploymentverzeichnis des Tomcat zu löschen (oder zumindest den Ordner deiner Anwendung darin).
 
Ok, ich habe das Problem eben durch Zufall "gelöst".
Die Klasse sollte ursprünglich "TicketTask" heißen. Die Klasse Ticket existierte natürlich schon und lief auch problemlos. Ich habe aus Verdacht vorhin schon die Javadateien zu "Task" umbenannt, allerdings ohne Erfolg. Was jedoch Erfolg hatte war, das Package in "task" umzubenennen.
Leider konnte ich das Problem nicht mit bspw. "userTask" reproduzieren (user existiert bereits als Package), "ticketTask" funktioniert aber auch nach mehrfachem löschen, neu erstellen, Neustarten der IDE und des Rechners nicht. Komisch.

Trotzdem danke an alle, die sich das Problem angesehen haben und versucht haben es zu lösen. Falls jemand weiß, warum sich das bei mir so verhält, wäre ich über nen Kommentar dankbar, aber immerhin kann ich jetzt weiter üben :)

edit: @tobi_e Ich habe bereits alle Deploymentverzeichnisse und Outputverzeichnisse gelöscht. Das war es leider nicht. Und für Tomcat muss ich in IntelliJ nicht viel konfigurieren. Komplett falsch kann es auch nicht sein, da die Anwendung ohne die drei Klassen (oder jetzt mit umbenannten Package) problemlos funktioniert.
 
Wenn du dich näher mit Spring etc beschäftigen willst, ist maven oder gradle sehr empfehlenswert ;)
(und Spring Boot wäre sicher einen Blick wert)
 
Passende Stellenanzeigen aus deiner Region:

Neue Themen

Oben