package api;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import tracker.DataCaptureServer;
import java.io.IOException;

@SpringBootApplication
public class ApiApplication {
    public static void main(String[] args) {
    
        try{
            DataCaptureServer.start();
        }catch(IOException e){
            System.out.println(e);
        }
        SpringApplication.run(ApiApplication.class, args);
    }
}