Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Application failed to start due to org.springframework.beans.factory.NoUniqueBeanDefinitionException #410

Closed
geneguard-radu opened this issue Oct 13, 2021 · 8 comments

Comments

@geneguard-radu
Copy link

Hi,

I'm running Exomiser 13.0.0, hg38, data version 2109, on an AWS linux machine with Java 17 Corretto.

java -Xms14g -Xmx14g -jar exomiser-cli-13.0.0.jar --analysis /data/analyses/EX76.analysis.yml

Here is the log that I'm getting:

 Welcome to:
  _____ _            _____                     _
 |_   _| |__   ___  | ____|_  _____  _ __ ___ (_)___  ___ _ __
   | | | '_ \ / _ \ |  _| \ \/ / _ \| '_ ` _ \| / __|/ _ \ '__|
   | | | | | |  __/ | |___ >  < (_) | | | | | | \__ \  __/ |
   |_| |_| |_|\___| |_____/_/\_\___/|_| |_| |_|_|___/\___|_|

 A Tool to Annotate and Prioritize Exome Variants     v13.0.0

2021-10-13 13:33:59.201  INFO 7464 --- [           main] org.monarchinitiative.exomiser.cli.Main  : Starting Main using Java 17 on ip-11-0-0-98.ec2.internal with PID 7464 (/home/ec2-user/exomiser-cli-13.0.0/exomiser-cli-13.0.0.jar started by ec2-user in /home/ec2-user/exomiser-cli-13.0.0)
2021-10-13 13:33:59.204  INFO 7464 --- [           main] org.monarchinitiative.exomiser.cli.Main  : No active profile set, falling back to default profiles: default
2021-10-13 13:34:00.475  INFO 7464 --- [           main] o.m.exomiser.cli.config.MainConfig       : Exomiser home: /home/ec2-user/exomiser-cli-13.0.0
2021-10-13 13:34:00.492  INFO 7464 --- [           main] o.m.exomiser.cli.config.MainConfig       : Data source directory defined in properties as: /data
2021-10-13 13:34:00.493  INFO 7464 --- [           main] o.m.exomiser.cli.config.MainConfig       : Root data source directory set to: /data
2021-10-13 13:34:00.499  INFO 7464 --- [           main] o.m.e.c.g.j.JannovarDataProtoSerialiser  : Deserialising Jannovar data from /data/2109_hg38/2109_hg38_transcripts_ensembl.ser
2021-10-13 13:34:02.316  INFO 7464 --- [           main] o.m.e.c.g.j.JannovarDataProtoSerialiser  : Deserialisation took 1.816 sec.
2021-10-13 13:34:04.122  INFO 7464 --- [           main] g.GenomeAnalysisServiceAutoConfiguration : Configured hg38 genome analysis service
2021-10-13 13:34:05.618  INFO 7464 --- [           main] o.m.exomiser.cli.config.MainConfig       : Default results directory set to: /home/ec2-user/exomiser-cli-13.0.0/results
2021-10-13 13:34:05.672  WARN 7464 --- [           main] s.c.a.AnnotationConfigApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Unsatisfied dependency expressed through method 'dataSource' parameter 0; nested exception is org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type 'org.springframework.boot.autoconfigure.jdbc.DataSourceProperties' available: expected single matching bean but found 3: spring.datasource-org.springframework.boot.autoconfigure.jdbc.DataSourceProperties,phenotypeDataSourceProperties,hg38genomeDataSourceProperties
2021-10-13 13:34:05.697  INFO 7464 --- [           main] ConditionEvaluationReportLoggingListener : 

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2021-10-13 13:34:05.715 ERROR 7464 --- [           main] o.s.b.d.LoggingFailureAnalysisReporter   : 

***************************
APPLICATION FAILED TO START
***************************

Description:

Parameter 0 of method dataSource in org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration$Hikari required a single bean, but 3 were found:
	- spring.datasource-org.springframework.boot.autoconfigure.jdbc.DataSourceProperties: defined in null
	- phenotypeDataSourceProperties: defined by method 'phenotypeDataSourceProperties' in org.monarchinitiative.exomiser.autoconfigure.phenotype.PhenotypeProperties
	- hg38genomeDataSourceProperties: defined by method 'hg38genomeDataSourceProperties' in org.monarchinitiative.exomiser.autoconfigure.genome.Hg38GenomeProperties


Action:

Consider marking one of the beans as @Primary, updating the consumer to accept multiple beans, or using @Qualifier to identify the bean that should be consumed

Could you please let me know if I'm doing something wrong or is this a bug?

Thank you!
Radu

@julesjacobsen
Copy link
Contributor

Could you provide a copy of your application.properties file?

@geneguard-radu
Copy link
Author

geneguard-radu commented Oct 19, 2021

Sure thing.

#
# The Exomiser - A tool to annotate and prioritize genomic variants
#
# Copyright (c) 2016-2021 Queen Mary University of London.
# Copyright (c) 2012-2016 Charité Universitätsmedizin Berlin and Genome Research Ltd.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
#

## exomiser root data directory ##
# root path where data is to be downloaded and worked on it is assumed that all the files required by exomiser listed
# in this properties file will be found in the data directory, unless specifically overridden here.
exomiser.data-directory=/data

remm.version=0.3.1.post1
cadd.version=1.4

exomiser.hg38.data-version=2109
exomiser.hg38.remm-path=${exomiser.data-directory}/remm/ReMM.v${remm.version}.hg38.tsv.gz
exomiser.hg38.variant-white-list-path=${exomiser.hg38.data-version}_hg38_clinvar_whitelist.tsv.gz
exomiser.phenotype.data-version=2109
logging.file.name=/data/logs/exomiser.log

I've reproduced this on another environment as well (Ubuntu, Java 11 Corretto).

To fix the issue I've added the Primary annotation to both methods in Hg38GenomeProperties.java.

 * The Exomiser - A tool to annotate and prioritize genomic variants
 *
 * Copyright (c) 2016-2021 Queen Mary University of London.
 * Copyright (c) 2012-2016 Charité Universitätsmedizin Berlin and Genome Research Ltd.
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Affero General Public License as
 * published by the Free Software Foundation, either version 3 of the
 * License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

package org.monarchinitiative.exomiser.autoconfigure.genome;

import com.zaxxer.hikari.HikariDataSource;
import org.monarchinitiative.exomiser.core.genome.GenomeAssembly;
import org.springframework.boot.autoconfigure.jdbc.DataSourceProperties;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;

/**
 * @author Jules Jacobsen <j.jacobsen@qmul.ac.uk>
 */
@Configuration
@ConfigurationProperties("exomiser.hg38")
public class Hg38GenomeProperties extends AbstractGenomeProperties {

    public Hg38GenomeProperties() {
        super(GenomeAssembly.HG38);
    }

    @Bean
    @Primary
    @ConfigurationProperties("exomiser.hg38.genome.datasource")
    public DataSourceProperties hg38genomeDataSourceProperties() {
        return new DataSourceProperties();
    }

    @Bean(name = "hg38genomeDataSource")
    @Primary
    @ConfigurationProperties("exomiser.hg38.genome.datasource.hikari")
    public HikariDataSource genomeDataSource() {
        return hg38genomeDataSourceProperties().initializeDataSourceBuilder().type(HikariDataSource.class).build();
    }

}

I rebuilt the project and it worked perfectly. It's an amazing tool! Thank you for your efforts!

@julesjacobsen
Copy link
Contributor

Hi @geneguard-radu thanks very much for your appreciation! I'm glad you managed to get your problem solved, however there is an issue with that particular solution in that the Hg19GenomeProperties class already contains @Primary annotations for these so the application will fail to start in cases where both assemblies are being used or just hg19 on its own.

I think I have a fix which I'll push a fix to a new branch which you can build and test.

@geneguard-radu
Copy link
Author

Hi @julesjacobsen. Got it. I have to admit I didn't check the Hg19 classes at all. Sounds good, thank you!

julesjacobsen added a commit that referenced this issue Nov 23, 2021
…eanDefinitionException when only hg38 data sources are defined
@julesjacobsen
Copy link
Contributor

Hi @geneguard-radu I've published release 13.0.1 with a fix for this now.

@Manuelaio
Copy link

Hi @julesjacobsen, I unfortunately had the same error despite new release.
I'm writing here because you have resolved this issue. Could you help me to understand what's going wrong

` 
 A Tool to Annotate and Prioritize Exome Variants     v13.0.1

2021-11-23 17:24:34.182  INFO 7716 --- [           main] org.monarchinitiative.exomiser.cli.Main  : Starting Main using Java 11.0.9.1-internal on vmngs2.aosp.biodec.com with PID 7716 (/work/emanuela.iovino/exomiser/exomiser-cli-13.0.1/exomiser-cli-13.0.1.jar started by emanuela.iovino in /work/emanuela.iovino/exomiser/exomiser-cli-13.0.1)
2021-11-23 17:24:34.185  INFO 7716 --- [           main] org.monarchinitiative.exomiser.cli.Main  : No active profile set, falling back to default profiles: default
2021-11-23 17:24:34.980  WARN 7716 --- [           main] s.c.a.AnnotationConfigApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'exomiserCommandLineRunner' defined in URL [jar:file:/work/emanuela.iovino/exomiser/exomiser-cli-13.0.1/exomiser-cli-13.0.1.jar!/org/monarchinitiative/exomiser/cli/ExomiserCommandLineRunner.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'exomiser' defined in URL [jar:file:/work/emanuela.iovino/exomiser/exomiser-cli-13.0.1/lib/exomiser-core-13.0.1.jar!/org/monarchinitiative/exomiser/core/Exomiser.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'analysisFactory' defined in URL [jar:file:/work/emanuela.iovino/exomiser/exomiser-cli-13.0.1/lib/exomiser-core-13.0.1.jar!/org/monarchinitiative/exomiser/core/analysis/AnalysisFactory.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'genomeAnalysisServiceProvider' defined in class path resource [org/monarchinitiative/exomiser/autoconfigure/genome/GenomeAnalysisServiceAutoConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.monarchinitiative.exomiser.core.genome.GenomeAnalysisServiceProvider]: Factory method 'genomeAnalysisServiceProvider' threw exception; nested exception is java.lang.IllegalArgumentException: genomeAnalysisServices cannot be empty.
2021-11-23 17:24:34.989  INFO 7716 --- [           main] ConditionEvaluationReportLoggingListener :

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2021-11-23 17:24:35.005 ERROR 7716 --- [           main] o.s.boot.SpringApplication               : Application run failed

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'exomiserCommandLineRunner' defined in URL [jar:file:/work/emanuela.iovino/exomiser/exomiser-cli-13.0.1/exomiser-cli-13.0.1.jar!/org/monarchinitiative/exomiser/cli/ExomiserCommandLineRunner.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'exomiser' defined in URL [jar:file:/work/emanuela.iovino/exomiser/exomiser-cli-13.0.1/lib/exomiser-core-13.0.1.jar!/org/monarchinitiative/exomiser/core/Exomiser.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'analysisFactory' defined in URL [jar:file:/work/emanuela.iovino/exomiser/exomiser-cli-13.0.1/lib/exomiser-core-13.0.1.jar!/org/monarchinitiative/exomiser/core/analysis/AnalysisFactory.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'genomeAnalysisServiceProvider' defined in class path resource [org/monarchinitiative/exomiser/autoconfigure/genome/GenomeAnalysisServiceAutoConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.monarchinitiative.exomiser.core.genome.GenomeAnalysisServiceProvider]: Factory method 'genomeAnalysisServiceProvider' threw exception; nested exception is java.lang.IllegalArgumentException: genomeAnalysisServices cannot be empty.
        at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800)
        at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1354)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1204)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:564)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:524)
        at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:944)
        at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
        at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:754)
        at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:434)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:338)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1343)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1332)
        at org.monarchinitiative.exomiser.cli.Main.main(Main.java:53)
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'exomiser' defined in URL [jar:file:/work/emanuela.iovino/exomiser/exomiser-cli-13.0.1/lib/exomiser-core-13.0.1.jar!/org/monarchinitiative/exomiser/core/Exomiser.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'analysisFactory' defined in URL [jar:file:/work/emanuela.iovino/exomiser/exomiser-cli-13.0.1/lib/exomiser-core-13.0.1.jar!/org/monarchinitiative/exomiser/core/analysis/AnalysisFactory.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'genomeAnalysisServiceProvider' defined in class path resource [org/monarchinitiative/exomiser/autoconfigure/genome/GenomeAnalysisServiceAutoConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.monarchinitiative.exomiser.core.genome.GenomeAnalysisServiceProvider]: Factory method 'genomeAnalysisServiceProvider' threw exception; nested exception is java.lang.IllegalArgumentException: genomeAnalysisServices cannot be empty.
        at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800)
        at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1354)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1204)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:564)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:524)
        at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
        at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1380)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1300)
        at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887)
        at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
        ... 18 common frames omitted
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'analysisFactory' defined in URL [jar:file:/work/emanuela.iovino/exomiser/exomiser-cli-13.0.1/lib/exomiser-core-13.0.1.jar!/org/monarchinitiative/exomiser/core/analysis/AnalysisFactory.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'genomeAnalysisServiceProvider' defined in class path resource [org/monarchinitiative/exomiser/autoconfigure/genome/GenomeAnalysisServiceAutoConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.monarchinitiative.exomiser.core.genome.GenomeAnalysisServiceProvider]: Factory method 'genomeAnalysisServiceProvider' threw exception; nested exception is java.lang.IllegalArgumentException: genomeAnalysisServices cannot be empty.
        at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800)
        at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1354)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1204)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:564)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:524)
        at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
        at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1380)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1300)
        at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887)
        at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
        ... 32 common frames omitted
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'genomeAnalysisServiceProvider' defined in class path resource [org/monarchinitiative/exomiser/autoconfigure/genome/GenomeAnalysisServiceAutoConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.monarchinitiative.exomiser.core.genome.GenomeAnalysisServiceProvider]: Factory method 'genomeAnalysisServiceProvider' threw exception; nested exception is java.lang.IllegalArgumentException: genomeAnalysisServices cannot be empty.
        at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658)
        at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:638)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1334)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1177)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:564)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:524)
        at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
        at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1380)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1300)
        at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887)
        at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)
        ... 46 common frames omitted
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.monarchinitiative.exomiser.core.genome.GenomeAnalysisServiceProvider]: Factory method 'genomeAnalysisServiceProvider' threw exception; nested exception is java.lang.IllegalArgumentException: genomeAnalysisServices cannot be empty.
        at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185)
        at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653)
        ... 60 common frames omitted
Caused by: java.lang.IllegalArgumentException: genomeAnalysisServices cannot be empty.
        at org.monarchinitiative.exomiser.core.genome.GenomeAnalysisServiceProvider.<init>(GenomeAnalysisServiceProvider.java:41)
        at org.monarchinitiative.exomiser.autoconfigure.genome.GenomeAnalysisServiceAutoConfiguration.genomeAnalysisServiceProvider(GenomeAnalysisServiceAutoConfiguration.java:51)
        at org.monarchinitiative.exomiser.autoconfigure.genome.GenomeAnalysisServiceAutoConfiguration$$EnhancerBySpringCGLIB$$f8f09e37.CGLIB$genomeAnalysisServiceProvider$0(<generated>)
        at org.monarchinitiative.exomiser.autoconfigure.genome.GenomeAnalysisServiceAutoConfiguration$$EnhancerBySpringCGLIB$$f8f09e37$$FastClassBySpringCGLIB$$53fa0cdc.invoke(<generated>)
        at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:244)
        at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:331)
        at org.monarchinitiative.exomiser.autoconfigure.genome.GenomeAnalysisServiceAutoConfiguration$$EnhancerBySpringCGLIB$$f8f09e37.genomeAnalysisServiceProvider(<generated>)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

`

@julesjacobsen
Copy link
Contributor

@Manuelaio this is a different error message. Try using the application.properties file as posted above in this thread. You need to have downloaded the data and specified where it is and the assembly version(s) you want to use.

@geneguard-radu
Copy link
Author

@julesjacobsen Thank you! I'll check it out.

julesjacobsen added a commit that referenced this issue Dec 9, 2021
…eanDefinitionException when only hg38 data sources are defined
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants