tangyong / ElasticFish

ElasticFish is a glassfish paas evolution and based on Glassfish 4.0-b33.
0 stars 0 forks source link

iaas-mgmt/virt-api module building failed #3

Open tangyong opened 11 years ago

tangyong commented 11 years ago

iaas-mgmt/virt-api module building failed as following:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.4:compile (default-compile) on project virt-api: Compilation failure: Compilation failure: [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\config\ServerPoolConfig.java:[48,32] エラー: シンボルを見つけられません [ERROR] シンボル: クラス Decorate [ERROR] 場所: パッケージ org.jvnet.hk2.annotations [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\config\ServerPoolConfig.java:[49,32] エラー: シンボルを見つけられません [ERROR] シンボル: クラス Inject [ERROR] 場所: パッケージ org.jvnet.hk2.annotations [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\config\ServerPoolConfig.java:[61,1] エラー: シンボルを見つけられません [ERROR] シンボル: クラス Decorate [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\config\MachineConfig.java:[48,32] エラー: シンボルを見つけられません [ERROR] シンボル: クラス Inject [ERROR] 場所: パッケージ org.jvnet.hk2.annotations [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\config\Virtualization.java:[47,32] エラー: シンボルを見つけられません [ERROR] シンボル: クラス Inject [ERROR] 場所: パッケージ org.jvnet.hk2.annotations [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\config\VirtualMachineConfig.java:[49,30] エラー: シンボルを見つけられません [ERROR] シンボル: クラス Habitat [ERROR] 場所: パッケージ org.jvnet.hk2.component [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\config\Template.java:[50,32] エラー: シンボルを見つけられません [ERROR] シンボル: クラス Inject [ERROR] 場所: パッケージ org.jvnet.hk2.annotations [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\config\Virtualizations.java:[51,32] エラー: シンボルを見つけられません [ERROR] シンボル: クラス Inject [ERROR] 場所: パッケージ org.jvnet.hk2.annotations [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\impl\IAASBootstrap.java:[44,24] エラー: パッケージorg.glassfish.hk2は存在しません [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\impl\IAASBootstrap.java:[45,24] エラー: パッケージorg.glassfish.hk2は存在しません [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\impl\IAASBootstrap.java:[46,24] エラー: パッケージorg.glassfish.hk2は存在しません [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\impl\IAASBootstrap.java:[51,32] エラー: シンボルを見つけられません [ERROR] シンボル: クラス Inject [ERROR] 場所: パッケージ org.jvnet.hk2.annotations [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\impl\IAASBootstrap.java:[66,47] エラー: シンボルを見つけられません [ERROR] シンボル: クラス PostConstruct [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\impl\IAASBootstrap.java:[75,4] エラー: シンボルを見つけられません [ERROR] シンボル: クラス Services [ERROR] 場所: クラス IAASBootstrap [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\config\ServerPoolConfig.java:[142,9] エラー: シンボルを見つけられません [ERROR] シンボル: クラス Inject [ERROR] 場所: クラス ServerPoolResolver [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\config\Virtualization.java:[163,9] エラー: シンボルを見つけられません [ERROR] シンボル: クラス Inject [ERROR] 場所: クラス VirtResolver [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\impl\IAASBootstrap.java:[68,5] エラー: シンボルを見つけられません [ERROR] シンボル: クラス Inject [ERROR] 場所: クラス IAASBootstrap [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\impl\IAASBootstrap.java:[71,5] エラー: シンボルを見つけられません [ERROR] シンボル: クラス Inject [ERROR] 場所: クラス IAASBootstrap [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\impl\IAASBootstrap.java:[74,5] エラー: シンボルを見つけられません [ERROR] シンボル: クラス Inject [ERROR] 場所: クラス IAASBootstrap [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\config\Virtualizations.java:[107,9] エラー: シンボルを見つけられません [ERROR] シンボル: クラス Inject [ERROR] 場所: クラス VirtResolver [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\config\Virtualizations.java:[110,9] エラー: シンボルを見つけられません [ERROR] シンボル: クラス Inject [ERROR] 場所: クラス VirtResolver [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\config\Template.java:[119,9] エラー: シンボルを見つけられません [ERROR] シンボル: クラス Inject [ERROR] 場所: クラス TemplateResolver [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\config\MachineConfig.java:[142,9] エラー: シンボルを見つけられません [ERROR] シンボル: クラス Inject [ERROR] 場所: クラス MachineResolver [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\config\VirtualMachineConfig.java:[89,15] エラー: シンボルを見つけられません [ERROR] シンボル: クラス Habitat [ERROR] 場所: クラス Utils [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\spi\TemplateCondition.java:[62,74] エラー: シンボルを見つけられません [ERROR] シンボル: メソッド getComponent(Class,String) [ERROR] 場所: インタフェース ServiceLocator [ERROR] D:\20130125\main\cloud\iaas-mgmt\virt-api\src\main\java\org\glassfish\virtualization\impl\IAASBootstrap.java:[82,4] エラー: メソッドはスーパータイプのメソッドをオーバーライドまたは実装しません [ERROR] -> [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException [ERROR] [ERROR] After correcting the problems, you can resume the build with the command [ERROR] mvn -rf :virt-api

tangyong commented 11 years ago

Because of HK2 API's big changes(2.0.1--->2.1.60(current my trunk)), building failed.

Change Points:

1 org.jvnet.hk2.annotations.Inject ---> javax.inject.Inject

1)MachineConfig.java 2)ServerPoolConfig.java 3)Template.java 4)Virtualization.java 5)Virtualizations.java 6)IAASBootstrap.java

2 @Inject(optional = true) ---->@Inject @Optional @Optional: org.jvnet.hk2.annotations.Optional

1)Virtualizations.java 2)IAASBootstrap.java

3 org.jvnet.hk2.annotations.Decorate ? I am confirming for HK2 Team. If having no way, using http://repo1.maven.org/maven2/org/glassfish/hk2/hk2-deprecated/2.1.9/hk2-deprecated-2.1.9.jar

1)ServerPoolConfig.java

4 org.jvnet.hk2.component.Habitat ---->org.glassfish.hk2.api.ServiceLocator org.jvnet.hk2.component.Habitat.getComponent ----> org.glassfish.hk2.api.ServiceLocator.getService

1)VirtualMachineConfig.java 2)TemplateCondition.java

5 org.glassfish.hk2.Services ---->?

6 org.glassfish.hk2.PostConstruct ----->org.glassfish.hk2.api.PostConstruct

1)IAASBootstrap.java

7 org.glassfish.hk2.Factory ----->org.glassfish.hk2.api.Factory

1)VirtualMachineConfig.java

8 org.glassfish.api.Startup ----->org.glassfish.api.StartupRunLevel

seeing: http://hk2.java.net/runlevelservices.html

1) IAASBootstrap.java

tangyong commented 11 years ago

In addition, comment the following lines in IAASBootstrap.java because currently, I have not found these lines have any roles, otherwise, we must replace org.jvnet.hk2.annotations.Service.

//@Inject //Services services;

@Override public void postConstruct() { if (virtualizations==null) { transactions.addListenerForType(Virtualizations.class, new ConfigListener() { @Override public UnprocessedChangeEvents changed(PropertyChangeEvent[] propertyChangeEvents) { //services.forContract(IAAS.class).get(); return null; } }); } else { //services.forContract(IAAS.class).get(); } }

tangyong commented 11 years ago

iaas-mgmt/virt-api module building is successful, and will commit these changes.