chenchurong opened a new issue, #4492:
URL: https://github.com/apache/incubator-seatunnel/issues/4492

   ### Search before asking
   
   - [X] I had searched in the 
[issues](https://github.com/apache/incubator-seatunnel/issues?q=is%3Aissue+label%3A%22bug%22)
 and found no similar issues.
   
   
   ### What happened
   
   when i start with  seantunnel-engine to sink data to hive from hdfs file , 
an error occured
   
   
   ### SeaTunnel Version
   
   2.3.1
   
   ### SeaTunnel Config
   
   ```conf
   env {                                                                        
                                                                                
                                                           
     job.mode = "BATCH"
   }
   
   source {
     HdfsFile {
       schema {
         fields {
           债券简称 = string
           债券代码 = string
           估值日期 = string
           流通场所 = string
           待偿期(年) = string
           日间估价全价(元) = string
           日间应计利息(元) = string
           估价净价(元) = string
           估价收益率(%) = string
           估价修正久期 = string
           估价凸性 = string
           估价基点价值 = string
           估价利差久期 = string
           估价利差凸性 = string
           加权平均结算全价(元) = string
           加权平均结算净价(元) = string
           加权平均结算收益率(%) = string
           加权平均结算价修正久期 = string
           加权平均结算价凸性 = string
           加权平均结算价基点价值 = string
           加权平均结算价利差久期 = string
           加权平均结算价利差凸性 = string
           可信度 = string
           估价利率久期 = string
           估价利率凸性 = string
           加权平均结算价利率久期 = string
           加权平均结算价利率凸性 = string
           日终估价全价(元) = string
           日终应计利息(元) = string
           剩余本金(元) = string
           点差收益率(%) = string
           流通场所债券代码 = string
           估算的行权后票面利率(%) = string
           ISIN代码 = string
          }
         }
       path = "/ods/20230331/债券估值2023033117380256183.csv"
       file_format_type  = "csv"
       fs.defaultFS = "hdfs://******:9000"
   }
   }
   
   transform {
     FieldMapper {
       source_table_name = "fake"
       result_table_name = "fake1"
       field_mapper = {
           债券简称 = sync_time2
           债券代码 = data_source_code
           估值日期 = sync_time1
           流通场所 = bond_short_name
           待偿期(年) = bond_num
           日间估价全价(元) = valuation_day
           日间应计利息(元) = bond_exchange
           估价净价(元) = bond_maturity_y
           估价收益率(%) = pricing_intra_day_full_price
           估价修正久期 = intra_day_accrued_interest
           估价凸性 = pricing_flat_price
                估价凸性 = pricing_yield
                估价凸性 = modified_duration
           估价基点价值 = basis_point_value
           估价利差久期 = spread_duration
           估价利差凸性 = spread_convexity
           加权平均结算全价(元) = wmsa_full_price
           加权平均结算净价(元) = wmsa_flat_price
           加权平均结算收益率(%) = wmsa_yield
           加权平均结算价修正久期 = wmsa_modified_duration
           加权平均结算价凸性 = wmsa_convexity
           加权平均结算价基点价值 = wmsa_basis_point_value
           加权平均结算价利差久期 = wmsa_spread_duration
           加权平均结算价利差凸性 = wmsa_spread_convexity
           可信度 = confidence_level
           估价利率久期 = rate_duration
           估价利率凸性 = rate_convexity
           加权平均结算价利率久期 = wmsa_rate_duration
           加权平均结算价利率凸性 = wmsa_rate_convexity
           日终估价全价(元) = pricing_end_of_day_full_price
           日终应计利息(元) = end_of_day_accrued_interest
           剩余本金(元) = remaining_principal
           点差收益率(%) = spread_yield
           流通场所债券代码 = exchange_bond_code
           估算的行权后票面利率(%) = estimate_exercise_coupon_rate
           ISIN代码 = isin_code
       }
     }
   }
   sink {
      Hive {
       table_name = "signal_r.dwd_zq_zqgz"
       metastore_uri = "thrift://****:9083"
     }
   }
   ```
   
   
   ### Running Command
   
   ```shell
   ./seatunnel.sh --config ../config/hdfs2hive.conf
   ```
   
   
   ### Error Exception
   
   ```log
   2023-04-04 10:04:09,601 INFO  
org.apache.seatunnel.core.starter.utils.ConfigBuilder - Loading config file 
from path: ../config/hdfs2hive.conf
   2023-04-04 10:04:09,610 INFO  
org.apache.seatunnel.core.starter.utils.ConfigBuilder - Parsed config file: {
       "env" : {
           "job.mode" : "BATCH"
       },
       "source" : [
           {
               "schema" : {
                   "fields" : {
                       "债券简称" : "string",
                       "债券代码" : "string",
                       "估值日期" : "string",
                       "流通场所" : "string",
                       "待偿期(年)" : "string",
                       "日间估价全价(元)" : "string",
                       "日间应计利息(元)" : "string",
                       "估价净价(元)" : "string",
                       "估价收益率(%)" : "string",
                       "估价修正久期" : "string",
                       "估价凸性" : "string",
                       "估价基点价值" : "string",
                       "估价利差久期" : "string",
                       "估价利差凸性" : "string",
                       "加权平均结算全价(元)" : "string",
                       "加权平均结算净价(元)" : "string",
                       "加权平均结算收益率(%)" : "string",
                       "加权平均结算价修正久期" : "string",
                       "加权平均结算价凸性" : "string",
                       "加权平均结算价基点价值" : "string",
                       "加权平均结算价利差久期" : "string",
                       "加权平均结算价利差凸性" : "string",
                       "可信度" : "string",
                       "估价利率久期" : "string",
                       "估价利率凸性" : "string",
                       "加权平均结算价利率久期" : "string",
                       "加权平均结算价利率凸性" : "string",
                       "日终估价全价(元)" : "string",
                       "日终应计利息(元)" : "string",
                       "剩余本金(元)" : "string",
                       "点差收益率(%)" : "string",
                       "流通场所债券代码" : "string",
                       "估算的行权后票面利率(%)" : "string",
                       "ISIN代码" : "string"
                   }
               },
               "fs.defaultFS" : "hdfs://******:9000",
               "path" : "/ods/20230331/债券估值2023033117380256183.csv",
               "file_format_type" : "csv",
               "plugin_name" : "HdfsFile"
           }
       ],
       "transform" : [
           {
               "field_mapper" : {
                   "债券简称" : "sync_time2",
                   "债券代码" : "data_source_code",
                   "估值日期" : "sync_time1",
                   "流通场所" : "bond_short_name",
                   "待偿期(年)" : "bond_num",
                   "日间估价全价(元)" : "valuation_day",
                   "日间应计利息(元)" : "bond_exchange",
                   "估价净价(元)" : "bond_maturity_y",
                   "估价收益率(%)" : "pricing_intra_day_full_price",
                   "估价修正久期" : "intra_day_accrued_interest",
                   "估价凸性" : "modified_duration",
                   "估价基点价值" : "basis_point_value",
                   "估价利差久期" : "spread_duration",
                   "估价利差凸性" : "spread_convexity",
                   "加权平均结算全价(元)" : "wmsa_full_price",
                   "加权平均结算净价(元)" : "wmsa_flat_price",
                   "加权平均结算收益率(%)" : "wmsa_yield",
                   "加权平均结算价修正久期" : "wmsa_modified_duration",
                   "加权平均结算价凸性" : "wmsa_convexity",
                   "加权平均结算价基点价值" : "wmsa_basis_point_value",
                   "加权平均结算价利差久期" : "wmsa_spread_duration",
                   "加权平均结算价利差凸性" : "wmsa_spread_convexity",
                   "可信度" : "confidence_level",
                   "估价利率久期" : "rate_duration",
                   "估价利率凸性" : "rate_convexity",
                   "加权平均结算价利率久期" : "wmsa_rate_duration",
                   "加权平均结算价利率凸性" : "wmsa_rate_convexity",
                   "日终估价全价(元)" : "pricing_end_of_day_full_price",
                   "日终应计利息(元)" : "end_of_day_accrued_interest",
                   "剩余本金(元)" : "remaining_principal",
                   "点差收益率(%)" : "spread_yield",
                   "流通场所债券代码" : "exchange_bond_code",
                   "估算的行权后票面利率(%)" : "estimate_exercise_coupon_rate",
                   "ISIN代码" : "isin_code"
               },
               "source_table_name" : "fake",
               "result_table_name" : "fake1",
               "plugin_name" : "FieldMapper"
           }
       ],
       "sink" : [
           {
               "metastore_uri" : "thrift://******:9083",
               "plugin_name" : "Hive",
               "table_name" : "signal_r.dwd_zq_zqgz"
           }
       ]
   }
   
   2023-04-04 10:04:09,618 INFO  
org.apache.seatunnel.plugin.discovery.AbstractPluginDiscovery - Load 
SeaTunnelSource Plugin from 
/data/hadoop/apache-seatunnel-incubating-2.3.1/connectors/seatunnel
   2023-04-04 10:04:09,630 INFO  
org.apache.seatunnel.plugin.discovery.AbstractPluginDiscovery - Discovery 
plugin jar: HdfsFile at: 
file:/data/hadoop/apache-seatunnel-incubating-2.3.1/connectors/seatunnel/connector-file-hadoop-2.3.1.jar
   2023-04-04 10:04:09,637 INFO  
org.apache.seatunnel.plugin.discovery.AbstractPluginDiscovery - Load plugin: 
PluginIdentifier{engineType='seatunnel', pluginType='source', 
pluginName='HdfsFile'} from path: 
file:/data/hadoop/apache-seatunnel-incubating-2.3.1/connectors/seatunnel/connector-file-hadoop-2.3.1.jar
 use classloader: 
org.apache.seatunnel.engine.common.loader.SeaTunnelChildFirstClassLoader
   2023-04-04 10:04:09,725 WARN  
org.apache.seatunnel.connectors.seatunnel.file.sink.util.FileSystemUtils - 
Principal [null] or keytabPath [null] is empty, it will skip kerberos 
authentication
   2023-04-04 10:04:09,833 WARN  org.apache.hadoop.util.NativeCodeLoader - 
Unable to load native-hadoop library for your platform... using builtin-java 
classes where applicable
   2023-04-04 10:04:10,445 INFO  
org.apache.seatunnel.plugin.discovery.AbstractPluginDiscovery - Load 
SeaTunnelTransform Plugin from 
/data/hadoop/apache-seatunnel-incubating-2.3.1/lib
   2023-04-04 10:04:10,448 INFO  com.hazelcast.core.LifecycleService - 
hz.client_1 [seatunnel] [5.1] HazelcastClient 5.1 (20220228 - 21f20e7) is 
SHUTTING_DOWN
   2023-04-04 10:04:10,451 INFO  
com.hazelcast.client.impl.connection.ClientConnectionManager - hz.client_1 
[seatunnel] [5.1] Removed connection to endpoint: 
[localhost]:5801:0ac593f9-6057-4f87-af8a-7119c042c90a, connection: 
ClientConnection{alive=false, connectionId=1, 
channel=NioChannel{/127.0.0.1:56453->localhost/127.0.0.1:5801}, 
remoteAddress=[localhost]:5801, lastReadTime=2023-04-04 10:04:09.484, 
lastWriteTime=2023-04-04 10:04:09.480, closedTime=2023-04-04 10:04:10.449, 
connected server version=5.1}
   2023-04-04 10:04:10,452 INFO  com.hazelcast.core.LifecycleService - 
hz.client_1 [seatunnel] [5.1] HazelcastClient 5.1 (20220228 - 21f20e7) is 
CLIENT_DISCONNECTED
   2023-04-04 10:04:10,454 INFO  com.hazelcast.core.LifecycleService - 
hz.client_1 [seatunnel] [5.1] HazelcastClient 5.1 (20220228 - 21f20e7) is 
SHUTDOWN
   2023-04-04 10:04:10,454 INFO  
org.apache.seatunnel.core.starter.seatunnel.command.ClientExecuteCommand - 
Closed SeaTunnel client......
   Exception in thread "main" java.util.ServiceConfigurationError: 
org.apache.seatunnel.api.transform.SeaTunnelTransform: Provider 
org.apache.seatunnel.transform.CopyFieldTransform could not be instantiated
        at java.util.ServiceLoader.fail(ServiceLoader.java:232)
        at java.util.ServiceLoader.access$100(ServiceLoader.java:185)
        at 
java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:384)
        at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404)
        at java.util.ServiceLoader$1.next(ServiceLoader.java:480)
        at 
org.apache.seatunnel.plugin.discovery.AbstractPluginDiscovery.loadPluginInstance(AbstractPluginDiscovery.java:295)
        at 
org.apache.seatunnel.plugin.discovery.AbstractPluginDiscovery.createPluginInstance(AbstractPluginDiscovery.java:184)
        at 
org.apache.seatunnel.engine.core.parse.ConnectorInstanceLoader.loadTransformInstance(ConnectorInstanceLoader.java:113)
        at 
org.apache.seatunnel.engine.core.parse.JobConfigParser.sampleAnalyze(JobConfigParser.java:385)
        at 
org.apache.seatunnel.engine.core.parse.JobConfigParser.parse(JobConfigParser.java:132)
        at 
org.apache.seatunnel.engine.core.parse.MultipleTableJobConfigParser.parse(MultipleTableJobConfigParser.java:112)
        at 
org.apache.seatunnel.engine.client.job.JobExecutionEnvironment.getLogicalDag(JobExecutionEnvironment.java:155)
        at 
org.apache.seatunnel.engine.client.job.JobExecutionEnvironment.execute(JobExecutionEnvironment.java:147)
        at 
org.apache.seatunnel.core.starter.seatunnel.command.ClientExecuteCommand.execute(ClientExecuteCommand.java:140)
        at org.apache.seatunnel.core.starter.SeaTunnel.run(SeaTunnel.java:40)
        at 
org.apache.seatunnel.core.starter.seatunnel.SeaTunnelClient.main(SeaTunnelClient.java:34)
   Caused by: java.lang.NoClassDefFoundError: 
org/apache/seatunnel/api/source/SourceCommonOptions
        at 
org.apache.seatunnel.transform.common.AbstractSeaTunnelTransform.<clinit>(AbstractSeaTunnelTransform.java:34)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
        at java.lang.Class.newInstance(Class.java:442)
        at 
java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:380)
        ... 13 more
   Caused by: java.lang.ClassNotFoundException: 
org.apache.seatunnel.api.source.SourceCommonOptions
        at java.net.URLClassLoader.findClass(URLClassLoader.java:387)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
        ... 20 more
   ```
   
   
   ### Flink or Spark Version
   
   none
   
   ### Java or Scala Version
   
   1.8
   
   ### Screenshots
   
   _No response_
   
   ### Are you willing to submit PR?
   
   - [X] Yes I am willing to submit a PR!
   
   ### Code of Conduct
   
   - [X] I agree to follow this project's [Code of 
Conduct](https://www.apache.org/foundation/policies/conduct)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to