I am trying to create 2 Azure Functions with Spring Cloud but I can't make it work.
@Configuration
public class FirstFunction extends AzureSpringBootRequestHandler<Optional<Void>, String>
{
  @FunctionName("firstFunction")
  public void run(
      @HttpTrigger(name = "req", methods = {HttpMethod.POST}, authLevel = AuthorizationLevel.FUNCTION) HttpRequestMessage<Optional<String>> request,
      final ExecutionContext context)
  {
    handleRequest(Optional.empty(), context);
  }
  @Bean
  @Lazy
  Function<Optional<Void>, String> firstFunction()
  {
    return context ->
    {
      // do firstFunction stuff;
    };
  }
}
@Configuration
public class SecondFunction extends AzureSpringBootRequestHandler<Optional<Void>, String>
{
  @FunctionName("secondFunction")
  public void run(
      @HttpTrigger(name = "req", methods = {HttpMethod.POST}, authLevel = AuthorizationLevel.FUNCTION) HttpRequestMessage<Optional<String>> request,
      final ExecutionContext context)
  {
    handleRequest(Optional.empty(), context);
  }
  @Bean
  @Lazy
  Function<Optional<Void>, String> secondFunction()
  {
    return context ->
    {
      // do secondFunction stuff;
    };
  }
}
@SpringBootApplication
public class Application
{
  public static void main(final String[] args)
  {
    SpringApplication.run(Application.class, args);
  }
}
Using the above code with the dependency on spring-cloud-function-dependencies 2.0.1.RELEASE, it always hits the firstFunction Bean when calling both the firstFunction and secondFunction endpoints.
After doing some googling, I found this SO answer that suggests to move to 2.1.
However when I tried changing to 2.1.1.RELEASE, I am getting an exception where it is failing to find a main class:
System.Private.CoreLib: Exception while executing function: Functions.extractContent. System.Private.CoreLib: Result: Failure
Exception: IllegalArgumentException: Failed to locate main class
Stack: java.lang.IllegalStateException: Failed to discover main class. An attempt was made to discover main class as 'MAIN_CLASS' environment variable, system property as well as entry
in META-INF/MANIFEST.MF (in that order).
Need some help on what I am doing wrong.
 
    


