@Configuration和@bean的使用,不能使用@Autowired自动配置
@Configuration
public class InitNebulaGraphConfig {
// @Value("#{\"xmlConfig.xml\"}")
String filename = new String("xmlConfig.xml");
@Bean("NebulaConfiguration")
public NebulaConfiguration Init(){
System.out.println(filename);
InitNebulaGraph initNebulaGraph = new InitNebulaGraphXml();
NebulaConfiguration nebulaConfiguration = initNebulaGraph.getConfiguration(filename);
return nebulaConfiguration;
}
}
将@Configuration替换为@Component可以使用
包扫描
@SpringBootApplication(scanBasePackages = {"cn.edu.xmu.nbtool","cn.edu.xmu.ngtool"})
springboot打包找不到程序包
修改pom文件
如果父pom中使用的是
<dependencies>....</dependencies>
的方式,则子pom会自动使用pom中的jar包,
如果父pom使用
<dependencyManagement>
<dependencies>....</dependencies>
</dependencyManagement>
方式,则子pom不会自动使用父pom中的jar包,这时如果子pom想使用的话,就要给出groupId和artifactId,无需给出version
将父pom.xml中加入需要引用的子项目的引用,之后修改插件
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.9.1</version>
<configuration>
<locales>zh_CN</locales>
<outputEncoding>UTF-8</outputEncoding>
</configuration>
<dependencies>
<dependency>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-webdav-jackrabbit</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-nop</artifactId>
<version>1.7.30</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
再父项目上intsall
在需要打包的项目中加入
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
避免出现.jar中没有主清单属性
|