This is an automated email from the ASF dual-hosted git repository.

xingfudeshi pushed a commit to branch 2.x
in repository https://gitbox.apache.org/repos/asf/incubator-seata.git


The following commit(s) were added to refs/heads/2.x by this push:
     new f0f144228f optimize: add license header for SPI file (#6650)
f0f144228f is described below

commit f0f144228f182f89d12c779b309737dda91d390f
Author: jimin <sliev...@163.com>
AuthorDate: Mon Jul 8 06:55:48 2024 +0800

    optimize: add license header for SPI file (#6650)
---
 .../services/org.apache.seata.common.loader.Hello        | 16 ++++++++++++++++
 .../services/io.seata.core.model.ResourceManager         | 16 ++++++++++++++++
 ...integration.tx.api.interceptor.parser.InterfaceParser | 16 ++++++++++++++++
 ...tion.tx.api.interceptor.parser.RegisterResourceParser | 16 ++++++++++++++++
 ...ache.seata.integration.tx.api.remoting.RemotingParser | 16 ++++++++++++++++
 .../services/org.apache.seata.core.compressor.Compressor | 16 ++++++++++++++++
 .../services/org.apache.seata.core.compressor.Compressor | 16 ++++++++++++++++
 .../services/org.apache.seata.core.compressor.Compressor | 16 ++++++++++++++++
 .../services/org.apache.seata.core.compressor.Compressor | 16 ++++++++++++++++
 .../services/org.apache.seata.core.compressor.Compressor | 16 ++++++++++++++++
 .../services/org.apache.seata.core.compressor.Compressor | 16 ++++++++++++++++
 .../org.apache.seata.config.ConfigurationProvider        | 16 ++++++++++++++++
 .../org.apache.seata.config.ConfigurationProvider        | 16 ++++++++++++++++
 .../services/org.apache.seata.config.file.FileConfig     | 16 ++++++++++++++++
 .../services/org.apache.seata.config.processor.Processor | 16 ++++++++++++++++
 .../org.apache.seata.config.ConfigurationProvider        | 16 ++++++++++++++++
 .../org.apache.seata.config.ConfigurationProvider        | 16 ++++++++++++++++
 .../org.apache.seata.config.ConfigurationProvider        | 16 ++++++++++++++++
 .../org.apache.seata.config.ConfigurationProvider        | 16 ++++++++++++++++
 .../services/io.seata.config.ConfigurationProvider       | 16 ++++++++++++++++
 .../org.apache.seata.config.ConfigurationProvider        | 16 ++++++++++++++++
 .../org.apache.seata.config.ConfigurationProvider        | 16 ++++++++++++++++
 .../services/org.apache.seata.core.auth.AuthSigner       | 16 ++++++++++++++++
 .../services/org.apache.seata.core.context.ContextCore   | 16 ++++++++++++++++
 .../services/org.apache.seata.core.rpc.hook.RpcHook      | 16 ++++++++++++++++
 ...core.store.db.sql.distributed.lock.DistributedLockSql | 16 ++++++++++++++++
 .../org.apache.seata.core.store.db.sql.lock.LockStoreSql | 16 ++++++++++++++++
 .../org.apache.seata.core.store.db.sql.log.LogStoreSqls  | 16 ++++++++++++++++
 .../org.apache.seata.discovery.registry.RegistryProvider | 16 ++++++++++++++++
 .../org.apache.seata.discovery.loadbalance.LoadBalance   | 16 ++++++++++++++++
 .../org.apache.seata.discovery.registry.RegistryProvider | 16 ++++++++++++++++
 .../org.apache.seata.discovery.registry.RegistryProvider | 16 ++++++++++++++++
 .../org.apache.seata.discovery.registry.RegistryProvider | 16 ++++++++++++++++
 .../org.apache.seata.discovery.registry.RegistryProvider | 16 ++++++++++++++++
 .../org.apache.seata.discovery.registry.RegistryProvider | 16 ++++++++++++++++
 .../org.apache.seata.discovery.registry.RegistryProvider | 16 ++++++++++++++++
 .../org.apache.seata.discovery.registry.RegistryProvider | 16 ++++++++++++++++
 .../org.apache.seata.discovery.registry.RegistryProvider | 16 ++++++++++++++++
 .../org.apache.seata.discovery.registry.RegistryProvider | 16 ++++++++++++++++
 .../org.apache.seata.discovery.registry.RegistryProvider | 16 ++++++++++++++++
 ...integration.tx.api.interceptor.parser.InterfaceParser | 16 ++++++++++++++++
 ...ache.seata.integration.tx.api.remoting.RemotingParser | 16 ++++++++++++++++
 .../META-INF/services/com.alibaba.dubbo.rpc.Filter       | 16 ++++++++++++++++
 .../services/com.taobao.hsf.invocation.filter.RPCFilter  | 16 ++++++++++++++++
 .../META-INF/services/com.weibo.api.motan.filter.Filter  | 16 ++++++++++++++++
 .../META-INF/services/com.alipay.sofa.rpc.filter.Filter  | 16 ++++++++++++++++
 .../services/org.apache.seata.metrics.exporter.Exporter  | 16 ++++++++++++++++
 .../services/org.apache.seata.metrics.registry.Registry  | 16 ++++++++++++++++
 .../services/org.apache.seata.core.model.ResourceManager | 16 ++++++++++++++++
 .../services/org.apache.seata.rm.AbstractRMHandler       | 16 ++++++++++++++++
 .../org.apache.seata.rm.datasource.exec.InsertExecutor   | 16 ++++++++++++++++
 ...rg.apache.seata.rm.datasource.undo.UndoExecutorHolder | 16 ++++++++++++++++
 .../org.apache.seata.rm.datasource.undo.UndoLogManager   | 16 ++++++++++++++++
 .../org.apache.seata.rm.datasource.undo.UndoLogParser    | 16 ++++++++++++++++
 .../services/org.apache.seata.sqlparser.EscapeHandler    | 16 ++++++++++++++++
 .../org.apache.seata.sqlparser.struct.TableMetaCache     | 16 ++++++++++++++++
 .../services/org.apache.seata.sqlparser.EscapeHandler    | 16 ++++++++++++++++
 ...pache.seata.saga.engine.pcext.StateHandlerInterceptor | 16 ++++++++++++++++
 ...apache.seata.saga.engine.pcext.StateRouterInterceptor | 16 ++++++++++++++++
 .../services/org.apache.seata.core.model.ResourceManager | 16 ++++++++++++++++
 .../services/org.apache.seata.rm.AbstractRMHandler       | 16 ++++++++++++++++
 .../org.apache.seata.saga.statelang.parser.JsonParser    | 16 ++++++++++++++++
 .../org.apache.seata.saga.statelang.validator.Rule       | 16 ++++++++++++++++
 .../org.apache.seata.config.ExtConfigurationProvider     | 16 ++++++++++++++++
 .../services/org.apache.seata.core.serializer.Serializer | 16 ++++++++++++++++
 .../services/org.apache.seata.core.serializer.Serializer | 16 ++++++++++++++++
 .../services/org.apache.seata.core.serializer.Serializer | 16 ++++++++++++++++
 .../services/org.apache.seata.core.serializer.Serializer | 16 ++++++++++++++++
 .../org.apache.seata.core.rpc.RegisterCheckAuthHandler   | 16 ++++++++++++++++
 .../services/org.apache.seata.core.serializer.Serializer | 16 ++++++++++++++++
 .../org.apache.seata.core.store.DistributedLocker        | 16 ++++++++++++++++
 .../org.apache.seata.core.store.db.DataSourceProvider    | 16 ++++++++++++++++
 .../org.apache.seata.server.coordinator.AbstractCore     | 16 ++++++++++++++++
 .../services/org.apache.seata.server.lock.LockManager    | 16 ++++++++++++++++
 .../org.apache.seata.server.session.SessionManager       | 16 ++++++++++++++++
 .../org.apache.seata.core.rpc.RegisterCheckAuthHandler   | 16 ++++++++++++++++
 .../org.apache.seata.core.store.DistributedLocker        | 16 ++++++++++++++++
 .../org.apache.seata.core.store.db.DataSourceProvider    | 16 ++++++++++++++++
 .../services/org.apache.seata.metrics.exporter.Exporter  | 16 ++++++++++++++++
 .../org.apache.seata.server.coordinator.AbstractCore     | 16 ++++++++++++++++
 .../services/org.apache.seata.server.lock.LockManager    | 16 ++++++++++++++++
 .../org.apache.seata.server.session.SessionManager       | 16 ++++++++++++++++
 ...tegration.tx.api.interceptor.parser.TargetClassParser | 16 ++++++++++++++++
 .../org.apache.seata.spring.annotation.ScannerChecker    | 16 ++++++++++++++++
 .../org.apache.seata.sqlparser.SQLRecognizerFactory      | 16 ++++++++++++++++
 ...ache.seata.sqlparser.antlr.SQLOperateRecognizerHolder | 16 ++++++++++++++++
 .../org.apache.seata.sqlparser.SQLRecognizerFactory      | 16 ++++++++++++++++
 ...ache.seata.sqlparser.druid.SQLOperateRecognizerHolder | 16 ++++++++++++++++
 .../org.apache.seata.sqlparser.util.DbTypeParser         | 16 ++++++++++++++++
 .../services/org.apache.seata.core.model.ResourceManager | 16 ++++++++++++++++
 ...integration.tx.api.interceptor.parser.InterfaceParser | 16 ++++++++++++++++
 ...tion.tx.api.interceptor.parser.RegisterResourceParser | 16 ++++++++++++++++
 ...ache.seata.integration.tx.api.remoting.RemotingParser | 16 ++++++++++++++++
 .../services/org.apache.seata.rm.AbstractRMHandler       | 16 ++++++++++++++++
 .../org.apache.seata.common.loader.LoaderTestSPI         | 16 ++++++++++++++++
 ...pache.seata.saga.engine.pcext.StateHandlerInterceptor | 16 ++++++++++++++++
 ...apache.seata.saga.engine.pcext.StateRouterInterceptor | 16 ++++++++++++++++
 .../org.apache.seata.core.model.TransactionManager       | 16 ++++++++++++++++
 98 files changed, 1568 insertions(+)

diff --git 
a/common/src/test/resources/META-INF/services/org.apache.seata.common.loader.Hello
 
b/common/src/test/resources/META-INF/services/org.apache.seata.common.loader.Hello
index 5bac73e604..f865548c64 100644
--- 
a/common/src/test/resources/META-INF/services/org.apache.seata.common.loader.Hello
+++ 
b/common/src/test/resources/META-INF/services/org.apache.seata.common.loader.Hello
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.common.loader.ChineseHello
\ No newline at end of file
diff --git 
a/compatible/src/main/resources/META-INF/services/io.seata.core.model.ResourceManager
 
b/compatible/src/main/resources/META-INF/services/io.seata.core.model.ResourceManager
index 1ff3f1997e..56e4addda1 100644
--- 
a/compatible/src/main/resources/META-INF/services/io.seata.core.model.ResourceManager
+++ 
b/compatible/src/main/resources/META-INF/services/io.seata.core.model.ResourceManager
@@ -1,2 +1,18 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 io.seata.saga.rm.SagaResourceManager
 io.seata.rm.tcc.TCCResourceManager
\ No newline at end of file
diff --git 
a/compatible/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.InterfaceParser
 
b/compatible/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.InterfaceParser
index 3bf5b41bb2..5374991dae 100644
--- 
a/compatible/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.InterfaceParser
+++ 
b/compatible/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.InterfaceParser
@@ -1,2 +1,18 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 io.seata.rm.tcc.interceptor.parser.TccActionInterceptorParser
 
io.seata.integration.tx.api.interceptor.parser.GlobalTransactionalInterceptorParser
diff --git 
a/compatible/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.RegisterResourceParser
 
b/compatible/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.RegisterResourceParser
index 9501e9d87c..82c08236e8 100644
--- 
a/compatible/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.RegisterResourceParser
+++ 
b/compatible/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.RegisterResourceParser
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 io.seata.rm.tcc.resource.parser.TccRegisterResourceParser
\ No newline at end of file
diff --git 
a/compatible/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.remoting.RemotingParser
 
b/compatible/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.remoting.RemotingParser
index 78ff6f2e84..0484196ead 100644
--- 
a/compatible/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.remoting.RemotingParser
+++ 
b/compatible/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.remoting.RemotingParser
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 io.seata.rm.tcc.remoting.parser.LocalTCCRemotingParser
\ No newline at end of file
diff --git 
a/compressor/seata-compressor-bzip2/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
 
b/compressor/seata-compressor-bzip2/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
index c24db82ba0..d44db58cbc 100644
--- 
a/compressor/seata-compressor-bzip2/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
+++ 
b/compressor/seata-compressor-bzip2/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.compressor.bzip2.BZip2Compressor
\ No newline at end of file
diff --git 
a/compressor/seata-compressor-deflater/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
 
b/compressor/seata-compressor-deflater/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
index b61fd3d27a..801e121cc3 100644
--- 
a/compressor/seata-compressor-deflater/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
+++ 
b/compressor/seata-compressor-deflater/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.compressor.deflater.DeflaterCompressor
\ No newline at end of file
diff --git 
a/compressor/seata-compressor-gzip/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
 
b/compressor/seata-compressor-gzip/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
index 7a09c97c07..85a83e30e9 100644
--- 
a/compressor/seata-compressor-gzip/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
+++ 
b/compressor/seata-compressor-gzip/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.compressor.gzip.GzipCompressor
\ No newline at end of file
diff --git 
a/compressor/seata-compressor-lz4/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
 
b/compressor/seata-compressor-lz4/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
index 0645956a62..e911f95008 100644
--- 
a/compressor/seata-compressor-lz4/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
+++ 
b/compressor/seata-compressor-lz4/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.compressor.lz4.Lz4Compressor
\ No newline at end of file
diff --git 
a/compressor/seata-compressor-zip/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
 
b/compressor/seata-compressor-zip/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
index 5f7988a920..cabb108c10 100644
--- 
a/compressor/seata-compressor-zip/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
+++ 
b/compressor/seata-compressor-zip/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.compressor.zip.ZipCompressor
\ No newline at end of file
diff --git 
a/compressor/seata-compressor-zstd/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
 
b/compressor/seata-compressor-zstd/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
index 40214b8615..e879613b19 100755
--- 
a/compressor/seata-compressor-zstd/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
+++ 
b/compressor/seata-compressor-zstd/src/main/resources/META-INF/services/org.apache.seata.core.compressor.Compressor
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.compressor.zstd.ZstdCompressor
\ No newline at end of file
diff --git 
a/config/seata-config-apollo/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
 
b/config/seata-config-apollo/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
index 5996f6d3af..444de0ac36 100644
--- 
a/config/seata-config-apollo/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
+++ 
b/config/seata-config-apollo/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.config.apollo.ApolloConfigurationProvider
\ No newline at end of file
diff --git 
a/config/seata-config-consul/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
 
b/config/seata-config-consul/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
index 80903f9b43..e20c50803f 100644
--- 
a/config/seata-config-consul/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
+++ 
b/config/seata-config-consul/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.config.consul.ConsulConfigurationProvider
\ No newline at end of file
diff --git 
a/config/seata-config-core/src/main/resources/META-INF/services/org.apache.seata.config.file.FileConfig
 
b/config/seata-config-core/src/main/resources/META-INF/services/org.apache.seata.config.file.FileConfig
index d54fab1d67..a1e9817951 100644
--- 
a/config/seata-config-core/src/main/resources/META-INF/services/org.apache.seata.config.file.FileConfig
+++ 
b/config/seata-config-core/src/main/resources/META-INF/services/org.apache.seata.config.file.FileConfig
@@ -1,2 +1,18 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.config.file.SimpleFileConfig
 org.apache.seata.config.file.YamlFileConfig
diff --git 
a/config/seata-config-core/src/main/resources/META-INF/services/org.apache.seata.config.processor.Processor
 
b/config/seata-config-core/src/main/resources/META-INF/services/org.apache.seata.config.processor.Processor
index bf5df91cb0..9794dc2ac7 100644
--- 
a/config/seata-config-core/src/main/resources/META-INF/services/org.apache.seata.config.processor.Processor
+++ 
b/config/seata-config-core/src/main/resources/META-INF/services/org.apache.seata.config.processor.Processor
@@ -1,2 +1,18 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.config.processor.ProcessorProperties
 org.apache.seata.config.processor.ProcessorYaml
\ No newline at end of file
diff --git 
a/config/seata-config-custom/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
 
b/config/seata-config-custom/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
index 500f617a38..a129f74b73 100644
--- 
a/config/seata-config-custom/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
+++ 
b/config/seata-config-custom/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.config.custom.CustomConfigurationProvider
\ No newline at end of file
diff --git 
a/config/seata-config-custom/src/test/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
 
b/config/seata-config-custom/src/test/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
index 5437b17b0e..11b6c0d2bc 100644
--- 
a/config/seata-config-custom/src/test/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
+++ 
b/config/seata-config-custom/src/test/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.config.CustomConfigurationProviderForTest
\ No newline at end of file
diff --git 
a/config/seata-config-etcd3/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
 
b/config/seata-config-etcd3/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
index 5db17efcd6..cd698fd77d 100644
--- 
a/config/seata-config-etcd3/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
+++ 
b/config/seata-config-etcd3/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.config.etcd3.EtcdConfigurationProvider
\ No newline at end of file
diff --git 
a/config/seata-config-nacos/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
 
b/config/seata-config-nacos/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
index 753017dc24..2332d87208 100644
--- 
a/config/seata-config-nacos/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
+++ 
b/config/seata-config-nacos/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.config.nacos.NacosConfigurationProvider
\ No newline at end of file
diff --git 
a/config/seata-config-nacos/src/test/resources/META-INF/services/io.seata.config.ConfigurationProvider
 
b/config/seata-config-nacos/src/test/resources/META-INF/services/io.seata.config.ConfigurationProvider
index 64e931fa25..a06919a0cc 100644
--- 
a/config/seata-config-nacos/src/test/resources/META-INF/services/io.seata.config.ConfigurationProvider
+++ 
b/config/seata-config-nacos/src/test/resources/META-INF/services/io.seata.config.ConfigurationProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 io.seata.config.nacos.NacosConfigurationProvider
\ No newline at end of file
diff --git 
a/config/seata-config-spring-cloud/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
 
b/config/seata-config-spring-cloud/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
index 67f4a29530..619b6eb456 100644
--- 
a/config/seata-config-spring-cloud/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
+++ 
b/config/seata-config-spring-cloud/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.config.springcloud.SpringCloudConfigurationProvider
\ No newline at end of file
diff --git 
a/config/seata-config-zk/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
 
b/config/seata-config-zk/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
index 5894a03e14..0c051e10e3 100644
--- 
a/config/seata-config-zk/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
+++ 
b/config/seata-config-zk/src/main/resources/META-INF/services/org.apache.seata.config.ConfigurationProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.config.zk.ZookeeperConfigurationProvider
\ No newline at end of file
diff --git 
a/core/src/main/resources/META-INF/services/org.apache.seata.core.auth.AuthSigner
 
b/core/src/main/resources/META-INF/services/org.apache.seata.core.auth.AuthSigner
index 4e90d3580f..6ac3f70029 100644
--- 
a/core/src/main/resources/META-INF/services/org.apache.seata.core.auth.AuthSigner
+++ 
b/core/src/main/resources/META-INF/services/org.apache.seata.core.auth.AuthSigner
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.core.auth.DefaultAuthSigner
\ No newline at end of file
diff --git 
a/core/src/main/resources/META-INF/services/org.apache.seata.core.context.ContextCore
 
b/core/src/main/resources/META-INF/services/org.apache.seata.core.context.ContextCore
index 37a6d88108..3c0c5d5632 100644
--- 
a/core/src/main/resources/META-INF/services/org.apache.seata.core.context.ContextCore
+++ 
b/core/src/main/resources/META-INF/services/org.apache.seata.core.context.ContextCore
@@ -1,2 +1,18 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.core.context.ThreadLocalContextCore
 org.apache.seata.core.context.FastThreadLocalContextCore
\ No newline at end of file
diff --git 
a/core/src/main/resources/META-INF/services/org.apache.seata.core.rpc.hook.RpcHook
 
b/core/src/main/resources/META-INF/services/org.apache.seata.core.rpc.hook.RpcHook
index a16fa37497..e81dd0d93e 100644
--- 
a/core/src/main/resources/META-INF/services/org.apache.seata.core.rpc.hook.RpcHook
+++ 
b/core/src/main/resources/META-INF/services/org.apache.seata.core.rpc.hook.RpcHook
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.core.rpc.hook.StatusRpcHook
\ No newline at end of file
diff --git 
a/core/src/main/resources/META-INF/services/org.apache.seata.core.store.db.sql.distributed.lock.DistributedLockSql
 
b/core/src/main/resources/META-INF/services/org.apache.seata.core.store.db.sql.distributed.lock.DistributedLockSql
index f769d558a3..edc3d76fc5 100644
--- 
a/core/src/main/resources/META-INF/services/org.apache.seata.core.store.db.sql.distributed.lock.DistributedLockSql
+++ 
b/core/src/main/resources/META-INF/services/org.apache.seata.core.store.db.sql.distributed.lock.DistributedLockSql
@@ -1,2 +1,18 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.core.store.db.sql.distributed.lock.BaseDistributedLockSql
 
org.apache.seata.core.store.db.sql.distributed.lock.BaseDistributedLockSqlServer
diff --git 
a/core/src/main/resources/META-INF/services/org.apache.seata.core.store.db.sql.lock.LockStoreSql
 
b/core/src/main/resources/META-INF/services/org.apache.seata.core.store.db.sql.lock.LockStoreSql
index c4bc2d3a5a..fea6412761 100644
--- 
a/core/src/main/resources/META-INF/services/org.apache.seata.core.store.db.sql.lock.LockStoreSql
+++ 
b/core/src/main/resources/META-INF/services/org.apache.seata.core.store.db.sql.lock.LockStoreSql
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.core.store.db.sql.lock.MysqlLockStoreSql
 org.apache.seata.core.store.db.sql.lock.OracleLockStoreSql
 org.apache.seata.core.store.db.sql.lock.OceanbaseLockStoreSql
diff --git 
a/core/src/main/resources/META-INF/services/org.apache.seata.core.store.db.sql.log.LogStoreSqls
 
b/core/src/main/resources/META-INF/services/org.apache.seata.core.store.db.sql.log.LogStoreSqls
index 307e71a14f..2f87cbe5aa 100644
--- 
a/core/src/main/resources/META-INF/services/org.apache.seata.core.store.db.sql.log.LogStoreSqls
+++ 
b/core/src/main/resources/META-INF/services/org.apache.seata.core.store.db.sql.log.LogStoreSqls
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.core.store.db.sql.log.MysqlLogStoreSqls
 org.apache.seata.core.store.db.sql.log.OracleLogStoreSqls
 org.apache.seata.core.store.db.sql.log.PostgresqlLogStoreSqls
diff --git 
a/discovery/seata-discovery-consul/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
 
b/discovery/seata-discovery-consul/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
index f12ae89122..3d6eb1a241 100644
--- 
a/discovery/seata-discovery-consul/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
+++ 
b/discovery/seata-discovery-consul/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.discovery.registry.consul.ConsulRegistryProvider
\ No newline at end of file
diff --git 
a/discovery/seata-discovery-core/src/main/resources/META-INF/services/org.apache.seata.discovery.loadbalance.LoadBalance
 
b/discovery/seata-discovery-core/src/main/resources/META-INF/services/org.apache.seata.discovery.loadbalance.LoadBalance
index 193b533aca..49c1ff1da6 100644
--- 
a/discovery/seata-discovery-core/src/main/resources/META-INF/services/org.apache.seata.discovery.loadbalance.LoadBalance
+++ 
b/discovery/seata-discovery-core/src/main/resources/META-INF/services/org.apache.seata.discovery.loadbalance.LoadBalance
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.discovery.loadbalance.RoundRobinLoadBalance
 org.apache.seata.discovery.loadbalance.RandomLoadBalance
 org.apache.seata.discovery.loadbalance.ConsistentHashLoadBalance
diff --git 
a/discovery/seata-discovery-core/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
 
b/discovery/seata-discovery-core/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
index 0fc06dfaa1..21febe9b7b 100644
--- 
a/discovery/seata-discovery-core/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
+++ 
b/discovery/seata-discovery-core/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.discovery.registry.FileRegistryProvider
\ No newline at end of file
diff --git 
a/discovery/seata-discovery-custom/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
 
b/discovery/seata-discovery-custom/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
index 62d5c3ed9a..15efff8655 100644
--- 
a/discovery/seata-discovery-custom/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
+++ 
b/discovery/seata-discovery-custom/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.discovery.registry.custom.CustomRegistryProvider
\ No newline at end of file
diff --git 
a/discovery/seata-discovery-custom/src/test/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
 
b/discovery/seata-discovery-custom/src/test/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
index 8db91c74c9..21e47a5ef6 100644
--- 
a/discovery/seata-discovery-custom/src/test/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
+++ 
b/discovery/seata-discovery-custom/src/test/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.discovery.registry.custom.CustomRegistryProviderForTest
\ No newline at end of file
diff --git 
a/discovery/seata-discovery-etcd3/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
 
b/discovery/seata-discovery-etcd3/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
index 4965b6120b..5e2db712ed 100644
--- 
a/discovery/seata-discovery-etcd3/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
+++ 
b/discovery/seata-discovery-etcd3/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.discovery.registry.etcd3.EtcdRegistryProvider
\ No newline at end of file
diff --git 
a/discovery/seata-discovery-eureka/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
 
b/discovery/seata-discovery-eureka/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
index 6c6c0e7d1d..b1e970344c 100644
--- 
a/discovery/seata-discovery-eureka/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
+++ 
b/discovery/seata-discovery-eureka/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.discovery.registry.eureka.EurekaRegistryProvider
\ No newline at end of file
diff --git 
a/discovery/seata-discovery-nacos/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
 
b/discovery/seata-discovery-nacos/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
index 4d49d51c07..1d1e53da07 100644
--- 
a/discovery/seata-discovery-nacos/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
+++ 
b/discovery/seata-discovery-nacos/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.discovery.registry.nacos.NacosRegistryProvider
\ No newline at end of file
diff --git 
a/discovery/seata-discovery-raft/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
 
b/discovery/seata-discovery-raft/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
index f83565d9d0..424af4fcc4 100644
--- 
a/discovery/seata-discovery-raft/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
+++ 
b/discovery/seata-discovery-raft/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.discovery.registry.raft.RaftRegistryProvider
\ No newline at end of file
diff --git 
a/discovery/seata-discovery-redis/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
 
b/discovery/seata-discovery-redis/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
index e7a96b36a0..72a9a5b490 100644
--- 
a/discovery/seata-discovery-redis/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
+++ 
b/discovery/seata-discovery-redis/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.discovery.registry.redis.RedisRegistryProvider
\ No newline at end of file
diff --git 
a/discovery/seata-discovery-sofa/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
 
b/discovery/seata-discovery-sofa/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
index b1231e1903..6f5473c506 100644
--- 
a/discovery/seata-discovery-sofa/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
+++ 
b/discovery/seata-discovery-sofa/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.discovery.registry.sofa.SofaRegistryProvider
\ No newline at end of file
diff --git 
a/discovery/seata-discovery-zk/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
 
b/discovery/seata-discovery-zk/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
index 57a4ade858..4a257d73a1 100644
--- 
a/discovery/seata-discovery-zk/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
+++ 
b/discovery/seata-discovery-zk/src/main/resources/META-INF/services/org.apache.seata.discovery.registry.RegistryProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.discovery.registry.zk.ZookeeperRegistryProvider
\ No newline at end of file
diff --git 
a/integration-tx-api/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.InterfaceParser
 
b/integration-tx-api/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.InterfaceParser
index 409cbdc67c..a11f737b99 100644
--- 
a/integration-tx-api/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.InterfaceParser
+++ 
b/integration-tx-api/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.InterfaceParser
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 
org.apache.seata.integration.tx.api.interceptor.parser.GlobalTransactionalInterceptorParser
\ No newline at end of file
diff --git 
a/integration-tx-api/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.remoting.RemotingParser
 
b/integration-tx-api/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.remoting.RemotingParser
index bc2e0f52b2..df5da176b4 100644
--- 
a/integration-tx-api/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.remoting.RemotingParser
+++ 
b/integration-tx-api/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.remoting.RemotingParser
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.integration.tx.api.remoting.parser.DubboRemotingParser
 org.apache.seata.integration.tx.api.remoting.parser.SofaRpcRemotingParser
 org.apache.seata.integration.tx.api.remoting.parser.HSFRemotingParser
\ No newline at end of file
diff --git 
a/integration/dubbo-alibaba/src/main/resources/META-INF/services/com.alibaba.dubbo.rpc.Filter
 
b/integration/dubbo-alibaba/src/main/resources/META-INF/services/com.alibaba.dubbo.rpc.Filter
index 372654bb99..f023063074 100644
--- 
a/integration/dubbo-alibaba/src/main/resources/META-INF/services/com.alibaba.dubbo.rpc.Filter
+++ 
b/integration/dubbo-alibaba/src/main/resources/META-INF/services/com.alibaba.dubbo.rpc.Filter
@@ -1,2 +1,18 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 
org.apache.seata.integration.dubbo.alibaba.AlibabaDubboTransactionConsumerFilter
 
org.apache.seata.integration.dubbo.alibaba.AlibabaDubboTransactionProviderFilter
\ No newline at end of file
diff --git 
a/integration/hsf/src/main/resources/META-INF/services/com.taobao.hsf.invocation.filter.RPCFilter
 
b/integration/hsf/src/main/resources/META-INF/services/com.taobao.hsf.invocation.filter.RPCFilter
index 371dd4f395..83a63c948a 100644
--- 
a/integration/hsf/src/main/resources/META-INF/services/com.taobao.hsf.invocation.filter.RPCFilter
+++ 
b/integration/hsf/src/main/resources/META-INF/services/com.taobao.hsf.invocation.filter.RPCFilter
@@ -1,2 +1,18 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.integration.hsf.HsfTransactionConsumerFilter
 org.apache.seata.integration.hsf.HsfTransactionProviderFilter
\ No newline at end of file
diff --git 
a/integration/motan/src/main/resources/META-INF/services/com.weibo.api.motan.filter.Filter
 
b/integration/motan/src/main/resources/META-INF/services/com.weibo.api.motan.filter.Filter
index a5b9d68413..14920bb6fa 100644
--- 
a/integration/motan/src/main/resources/META-INF/services/com.weibo.api.motan.filter.Filter
+++ 
b/integration/motan/src/main/resources/META-INF/services/com.weibo.api.motan.filter.Filter
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.integration.motan.MotanTransactionFilter
\ No newline at end of file
diff --git 
a/integration/sofa-rpc/src/main/resources/META-INF/services/com.alipay.sofa.rpc.filter.Filter
 
b/integration/sofa-rpc/src/main/resources/META-INF/services/com.alipay.sofa.rpc.filter.Filter
index a8576dea23..d03540ec4a 100644
--- 
a/integration/sofa-rpc/src/main/resources/META-INF/services/com.alipay.sofa.rpc.filter.Filter
+++ 
b/integration/sofa-rpc/src/main/resources/META-INF/services/com.alipay.sofa.rpc.filter.Filter
@@ -1,2 +1,18 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.integration.sofa.rpc.TransactionContextProviderFilter
 org.apache.seata.integration.sofa.rpc.TransactionContextConsumerFilter
\ No newline at end of file
diff --git 
a/metrics/seata-metrics-exporter-prometheus/src/main/resources/META-INF/services/org.apache.seata.metrics.exporter.Exporter
 
b/metrics/seata-metrics-exporter-prometheus/src/main/resources/META-INF/services/org.apache.seata.metrics.exporter.Exporter
index bfbcd91898..1b237f63ca 100644
--- 
a/metrics/seata-metrics-exporter-prometheus/src/main/resources/META-INF/services/org.apache.seata.metrics.exporter.Exporter
+++ 
b/metrics/seata-metrics-exporter-prometheus/src/main/resources/META-INF/services/org.apache.seata.metrics.exporter.Exporter
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.metrics.exporter.prometheus.PrometheusExporter
\ No newline at end of file
diff --git 
a/metrics/seata-metrics-registry-compact/src/main/resources/META-INF/services/org.apache.seata.metrics.registry.Registry
 
b/metrics/seata-metrics-registry-compact/src/main/resources/META-INF/services/org.apache.seata.metrics.registry.Registry
index b8676f5c5d..73f262be62 100644
--- 
a/metrics/seata-metrics-registry-compact/src/main/resources/META-INF/services/org.apache.seata.metrics.registry.Registry
+++ 
b/metrics/seata-metrics-registry-compact/src/main/resources/META-INF/services/org.apache.seata.metrics.registry.Registry
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.metrics.registry.compact.CompactRegistry
\ No newline at end of file
diff --git 
a/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.core.model.ResourceManager
 
b/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.core.model.ResourceManager
index 4995278f69..dc36c0ac36 100644
--- 
a/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.core.model.ResourceManager
+++ 
b/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.core.model.ResourceManager
@@ -1,2 +1,18 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.rm.datasource.DataSourceManager
 org.apache.seata.rm.datasource.xa.ResourceManagerXA
\ No newline at end of file
diff --git 
a/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.rm.AbstractRMHandler
 
b/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.rm.AbstractRMHandler
index f7d1207942..2e4d28e83a 100644
--- 
a/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.rm.AbstractRMHandler
+++ 
b/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.rm.AbstractRMHandler
@@ -1,2 +1,18 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.rm.RMHandlerAT
 org.apache.seata.rm.RMHandlerXA
\ No newline at end of file
diff --git 
a/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.rm.datasource.exec.InsertExecutor
 
b/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.rm.datasource.exec.InsertExecutor
index 27a533e3f4..f928928e1d 100644
--- 
a/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.rm.datasource.exec.InsertExecutor
+++ 
b/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.rm.datasource.exec.InsertExecutor
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.rm.datasource.exec.mysql.MySQLInsertExecutor
 org.apache.seata.rm.datasource.exec.oracle.OracleInsertExecutor
 org.apache.seata.rm.datasource.exec.postgresql.PostgresqlInsertExecutor
diff --git 
a/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.rm.datasource.undo.UndoExecutorHolder
 
b/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.rm.datasource.undo.UndoExecutorHolder
index 2bd9e9b156..4bad8e9af0 100644
--- 
a/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.rm.datasource.undo.UndoExecutorHolder
+++ 
b/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.rm.datasource.undo.UndoExecutorHolder
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.rm.datasource.undo.mysql.MySQLUndoExecutorHolder
 org.apache.seata.rm.datasource.undo.oracle.OracleUndoExecutorHolder
 org.apache.seata.rm.datasource.undo.postgresql.PostgresqlUndoExecutorHolder
diff --git 
a/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.rm.datasource.undo.UndoLogManager
 
b/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.rm.datasource.undo.UndoLogManager
index 442235ddb0..a18cb71ab8 100644
--- 
a/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.rm.datasource.undo.UndoLogManager
+++ 
b/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.rm.datasource.undo.UndoLogManager
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.rm.datasource.undo.mysql.MySQLUndoLogManager
 org.apache.seata.rm.datasource.undo.oracle.OracleUndoLogManager
 org.apache.seata.rm.datasource.undo.postgresql.PostgresqlUndoLogManager
diff --git 
a/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.rm.datasource.undo.UndoLogParser
 
b/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.rm.datasource.undo.UndoLogParser
index 4b785eb0cf..26abca209e 100644
--- 
a/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.rm.datasource.undo.UndoLogParser
+++ 
b/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.rm.datasource.undo.UndoLogParser
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.rm.datasource.undo.parser.FastjsonUndoLogParser
 org.apache.seata.rm.datasource.undo.parser.JacksonUndoLogParser
 org.apache.seata.rm.datasource.undo.parser.ProtostuffUndoLogParser
diff --git 
a/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.sqlparser.EscapeHandler
 
b/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.sqlparser.EscapeHandler
index d0e9ea84e3..c4f82c8549 100644
--- 
a/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.sqlparser.EscapeHandler
+++ 
b/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.sqlparser.EscapeHandler
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.rm.datasource.sql.handler.oracle.OracleEscapeHandler
 org.apache.seata.rm.datasource.sql.handler.mysql.MySQLEscapeHandler
 org.apache.seata.rm.datasource.sql.handler.postgresql.PostgresqlEscapeHandler
diff --git 
a/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.sqlparser.struct.TableMetaCache
 
b/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.sqlparser.struct.TableMetaCache
index 6cab3424eb..1b09044c0f 100644
--- 
a/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.sqlparser.struct.TableMetaCache
+++ 
b/rm-datasource/src/main/resources/META-INF/services/org.apache.seata.sqlparser.struct.TableMetaCache
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.rm.datasource.sql.struct.cache.MysqlTableMetaCache
 org.apache.seata.rm.datasource.sql.struct.cache.OracleTableMetaCache
 org.apache.seata.rm.datasource.sql.struct.cache.PostgresqlTableMetaCache
diff --git 
a/rm-datasource/src/test/resources/META-INF/services/org.apache.seata.sqlparser.EscapeHandler
 
b/rm-datasource/src/test/resources/META-INF/services/org.apache.seata.sqlparser.EscapeHandler
index 8093f17c35..ea4cec5e65 100644
--- 
a/rm-datasource/src/test/resources/META-INF/services/org.apache.seata.sqlparser.EscapeHandler
+++ 
b/rm-datasource/src/test/resources/META-INF/services/org.apache.seata.sqlparser.EscapeHandler
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.rm.datasource.undo.h2.keyword.H2EscapeHandler
\ No newline at end of file
diff --git 
a/saga/seata-saga-engine/src/main/resources/META-INF/services/org.apache.seata.saga.engine.pcext.StateHandlerInterceptor
 
b/saga/seata-saga-engine/src/main/resources/META-INF/services/org.apache.seata.saga.engine.pcext.StateHandlerInterceptor
index 0626e821f0..f202ccab9c 100644
--- 
a/saga/seata-saga-engine/src/main/resources/META-INF/services/org.apache.seata.saga.engine.pcext.StateHandlerInterceptor
+++ 
b/saga/seata-saga-engine/src/main/resources/META-INF/services/org.apache.seata.saga.engine.pcext.StateHandlerInterceptor
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.saga.engine.pcext.interceptors.ServiceTaskHandlerInterceptor
 org.apache.seata.saga.engine.pcext.interceptors.ScriptTaskHandlerInterceptor
 org.apache.seata.saga.engine.pcext.interceptors.LoopTaskHandlerInterceptor
diff --git 
a/saga/seata-saga-engine/src/main/resources/META-INF/services/org.apache.seata.saga.engine.pcext.StateRouterInterceptor
 
b/saga/seata-saga-engine/src/main/resources/META-INF/services/org.apache.seata.saga.engine.pcext.StateRouterInterceptor
index 38ab2da963..a3005b2377 100644
--- 
a/saga/seata-saga-engine/src/main/resources/META-INF/services/org.apache.seata.saga.engine.pcext.StateRouterInterceptor
+++ 
b/saga/seata-saga-engine/src/main/resources/META-INF/services/org.apache.seata.saga.engine.pcext.StateRouterInterceptor
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.saga.engine.pcext.interceptors.EndStateRouterInterceptor
\ No newline at end of file
diff --git 
a/saga/seata-saga-rm/src/main/resources/META-INF/services/org.apache.seata.core.model.ResourceManager
 
b/saga/seata-saga-rm/src/main/resources/META-INF/services/org.apache.seata.core.model.ResourceManager
index 3351d578b6..a56c0a3e29 100644
--- 
a/saga/seata-saga-rm/src/main/resources/META-INF/services/org.apache.seata.core.model.ResourceManager
+++ 
b/saga/seata-saga-rm/src/main/resources/META-INF/services/org.apache.seata.core.model.ResourceManager
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.saga.rm.SagaResourceManager
diff --git 
a/saga/seata-saga-rm/src/main/resources/META-INF/services/org.apache.seata.rm.AbstractRMHandler
 
b/saga/seata-saga-rm/src/main/resources/META-INF/services/org.apache.seata.rm.AbstractRMHandler
index c584d29008..af3063c8e1 100644
--- 
a/saga/seata-saga-rm/src/main/resources/META-INF/services/org.apache.seata.rm.AbstractRMHandler
+++ 
b/saga/seata-saga-rm/src/main/resources/META-INF/services/org.apache.seata.rm.AbstractRMHandler
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.saga.rm.RMHandlerSaga
\ No newline at end of file
diff --git 
a/saga/seata-saga-statelang/src/main/resources/META-INF/services/org.apache.seata.saga.statelang.parser.JsonParser
 
b/saga/seata-saga-statelang/src/main/resources/META-INF/services/org.apache.seata.saga.statelang.parser.JsonParser
index 519b8bb952..ad678c0369 100644
--- 
a/saga/seata-saga-statelang/src/main/resources/META-INF/services/org.apache.seata.saga.statelang.parser.JsonParser
+++ 
b/saga/seata-saga-statelang/src/main/resources/META-INF/services/org.apache.seata.saga.statelang.parser.JsonParser
@@ -1,2 +1,18 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.saga.statelang.parser.impl.FastjsonParser
 org.apache.seata.saga.statelang.parser.impl.JacksonJsonParser
\ No newline at end of file
diff --git 
a/saga/seata-saga-statelang/src/main/resources/META-INF/services/org.apache.seata.saga.statelang.validator.Rule
 
b/saga/seata-saga-statelang/src/main/resources/META-INF/services/org.apache.seata.saga.statelang.validator.Rule
index 2e9d508218..332f5475aa 100644
--- 
a/saga/seata-saga-statelang/src/main/resources/META-INF/services/org.apache.seata.saga.statelang.validator.Rule
+++ 
b/saga/seata-saga-statelang/src/main/resources/META-INF/services/org.apache.seata.saga.statelang.validator.Rule
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.saga.statelang.validator.impl.StateNameExistsRule
 org.apache.seata.saga.statelang.validator.impl.FiniteTerminationRule
 org.apache.seata.saga.statelang.validator.impl.NoRecursiveSubStateMachineRule
\ No newline at end of file
diff --git 
a/seata-spring-autoconfigure/seata-spring-autoconfigure-core/src/main/resources/META-INF/services/org.apache.seata.config.ExtConfigurationProvider
 
b/seata-spring-autoconfigure/seata-spring-autoconfigure-core/src/main/resources/META-INF/services/org.apache.seata.config.ExtConfigurationProvider
index e1f87ec400..60c8a2e5ba 100644
--- 
a/seata-spring-autoconfigure/seata-spring-autoconfigure-core/src/main/resources/META-INF/services/org.apache.seata.config.ExtConfigurationProvider
+++ 
b/seata-spring-autoconfigure/seata-spring-autoconfigure-core/src/main/resources/META-INF/services/org.apache.seata.config.ExtConfigurationProvider
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 
org.apache.seata.spring.boot.autoconfigure.provider.SpringBootConfigurationProvider
\ No newline at end of file
diff --git 
a/serializer/seata-serializer-hessian/src/main/resources/META-INF/services/org.apache.seata.core.serializer.Serializer
 
b/serializer/seata-serializer-hessian/src/main/resources/META-INF/services/org.apache.seata.core.serializer.Serializer
index 6fe92a8093..71e3122f20 100644
--- 
a/serializer/seata-serializer-hessian/src/main/resources/META-INF/services/org.apache.seata.core.serializer.Serializer
+++ 
b/serializer/seata-serializer-hessian/src/main/resources/META-INF/services/org.apache.seata.core.serializer.Serializer
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.serializer.hessian.HessianSerializer
\ No newline at end of file
diff --git 
a/serializer/seata-serializer-kryo/src/main/resources/META-INF/services/org.apache.seata.core.serializer.Serializer
 
b/serializer/seata-serializer-kryo/src/main/resources/META-INF/services/org.apache.seata.core.serializer.Serializer
index 84106df371..f59865549f 100644
--- 
a/serializer/seata-serializer-kryo/src/main/resources/META-INF/services/org.apache.seata.core.serializer.Serializer
+++ 
b/serializer/seata-serializer-kryo/src/main/resources/META-INF/services/org.apache.seata.core.serializer.Serializer
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.serializer.kryo.KryoSerializer
\ No newline at end of file
diff --git 
a/serializer/seata-serializer-protobuf/src/main/resources/META-INF/services/org.apache.seata.core.serializer.Serializer
 
b/serializer/seata-serializer-protobuf/src/main/resources/META-INF/services/org.apache.seata.core.serializer.Serializer
index 74e9f0a332..71098c5367 100644
--- 
a/serializer/seata-serializer-protobuf/src/main/resources/META-INF/services/org.apache.seata.core.serializer.Serializer
+++ 
b/serializer/seata-serializer-protobuf/src/main/resources/META-INF/services/org.apache.seata.core.serializer.Serializer
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.serializer.protobuf.ProtobufSerializer
\ No newline at end of file
diff --git 
a/serializer/seata-serializer-seata/src/main/resources/META-INF/services/org.apache.seata.core.serializer.Serializer
 
b/serializer/seata-serializer-seata/src/main/resources/META-INF/services/org.apache.seata.core.serializer.Serializer
index 9211454c21..71ceedc489 100644
--- 
a/serializer/seata-serializer-seata/src/main/resources/META-INF/services/org.apache.seata.core.serializer.Serializer
+++ 
b/serializer/seata-serializer-seata/src/main/resources/META-INF/services/org.apache.seata.core.serializer.Serializer
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.serializer.seata.SeataSerializer
\ No newline at end of file
diff --git 
a/server/src/main/resources/META-INF/services/org.apache.seata.core.rpc.RegisterCheckAuthHandler
 
b/server/src/main/resources/META-INF/services/org.apache.seata.core.rpc.RegisterCheckAuthHandler
index 05fdd67be4..4b0b8c359c 100644
--- 
a/server/src/main/resources/META-INF/services/org.apache.seata.core.rpc.RegisterCheckAuthHandler
+++ 
b/server/src/main/resources/META-INF/services/org.apache.seata.core.rpc.RegisterCheckAuthHandler
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.server.auth.DefaultCheckAuthHandler
\ No newline at end of file
diff --git 
a/server/src/main/resources/META-INF/services/org.apache.seata.core.serializer.Serializer
 
b/server/src/main/resources/META-INF/services/org.apache.seata.core.serializer.Serializer
index f2c33fe3fb..e5f026d602 100644
--- 
a/server/src/main/resources/META-INF/services/org.apache.seata.core.serializer.Serializer
+++ 
b/server/src/main/resources/META-INF/services/org.apache.seata.core.serializer.Serializer
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.server.cluster.raft.serializer.JacksonSerializer
\ No newline at end of file
diff --git 
a/server/src/main/resources/META-INF/services/org.apache.seata.core.store.DistributedLocker
 
b/server/src/main/resources/META-INF/services/org.apache.seata.core.store.DistributedLocker
index 3eb53647be..4e524489ec 100644
--- 
a/server/src/main/resources/META-INF/services/org.apache.seata.core.store.DistributedLocker
+++ 
b/server/src/main/resources/META-INF/services/org.apache.seata.core.store.DistributedLocker
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.server.storage.redis.lock.RedisDistributedLocker
 org.apache.seata.server.storage.db.lock.DataBaseDistributedLocker
 org.apache.seata.server.storage.raft.lock.RaftDistributedLocker
\ No newline at end of file
diff --git 
a/server/src/main/resources/META-INF/services/org.apache.seata.core.store.db.DataSourceProvider
 
b/server/src/main/resources/META-INF/services/org.apache.seata.core.store.db.DataSourceProvider
index aed5a07c6d..23f0848f2c 100644
--- 
a/server/src/main/resources/META-INF/services/org.apache.seata.core.store.db.DataSourceProvider
+++ 
b/server/src/main/resources/META-INF/services/org.apache.seata.core.store.db.DataSourceProvider
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.server.store.DbcpDataSourceProvider
 org.apache.seata.server.store.DruidDataSourceProvider
 org.apache.seata.server.store.HikariDataSourceProvider
\ No newline at end of file
diff --git 
a/server/src/main/resources/META-INF/services/org.apache.seata.server.coordinator.AbstractCore
 
b/server/src/main/resources/META-INF/services/org.apache.seata.server.coordinator.AbstractCore
index d04b0aa190..538e5a4cae 100644
--- 
a/server/src/main/resources/META-INF/services/org.apache.seata.server.coordinator.AbstractCore
+++ 
b/server/src/main/resources/META-INF/services/org.apache.seata.server.coordinator.AbstractCore
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.server.transaction.at.ATCore
 org.apache.seata.server.transaction.tcc.TccCore
 org.apache.seata.server.transaction.saga.SagaCore
diff --git 
a/server/src/main/resources/META-INF/services/org.apache.seata.server.lock.LockManager
 
b/server/src/main/resources/META-INF/services/org.apache.seata.server.lock.LockManager
index cebc1d1e08..c6f6f41e14 100644
--- 
a/server/src/main/resources/META-INF/services/org.apache.seata.server.lock.LockManager
+++ 
b/server/src/main/resources/META-INF/services/org.apache.seata.server.lock.LockManager
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.server.storage.db.lock.DataBaseLockManager
 org.apache.seata.server.storage.file.lock.FileLockManager
 org.apache.seata.server.storage.redis.lock.RedisLockManager
diff --git 
a/server/src/main/resources/META-INF/services/org.apache.seata.server.session.SessionManager
 
b/server/src/main/resources/META-INF/services/org.apache.seata.server.session.SessionManager
index d8ce19d480..2f68b517b0 100644
--- 
a/server/src/main/resources/META-INF/services/org.apache.seata.server.session.SessionManager
+++ 
b/server/src/main/resources/META-INF/services/org.apache.seata.server.session.SessionManager
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.server.storage.file.session.FileSessionManager
 org.apache.seata.server.storage.db.session.DataBaseSessionManager
 org.apache.seata.server.storage.redis.session.RedisSessionManager
diff --git 
a/server/src/test/resources/META-INF/services/org.apache.seata.core.rpc.RegisterCheckAuthHandler
 
b/server/src/test/resources/META-INF/services/org.apache.seata.core.rpc.RegisterCheckAuthHandler
index 05fdd67be4..4b0b8c359c 100644
--- 
a/server/src/test/resources/META-INF/services/org.apache.seata.core.rpc.RegisterCheckAuthHandler
+++ 
b/server/src/test/resources/META-INF/services/org.apache.seata.core.rpc.RegisterCheckAuthHandler
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.server.auth.DefaultCheckAuthHandler
\ No newline at end of file
diff --git 
a/server/src/test/resources/META-INF/services/org.apache.seata.core.store.DistributedLocker
 
b/server/src/test/resources/META-INF/services/org.apache.seata.core.store.DistributedLocker
index d57875b0a8..4a8ee2f716 100644
--- 
a/server/src/test/resources/META-INF/services/org.apache.seata.core.store.DistributedLocker
+++ 
b/server/src/test/resources/META-INF/services/org.apache.seata.core.store.DistributedLocker
@@ -1,2 +1,18 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.server.storage.redis.lock.RedisDistributedLocker
 org.apache.seata.server.storage.db.lock.DataBaseDistributedLocker
\ No newline at end of file
diff --git 
a/server/src/test/resources/META-INF/services/org.apache.seata.core.store.db.DataSourceProvider
 
b/server/src/test/resources/META-INF/services/org.apache.seata.core.store.db.DataSourceProvider
index aed5a07c6d..23f0848f2c 100644
--- 
a/server/src/test/resources/META-INF/services/org.apache.seata.core.store.db.DataSourceProvider
+++ 
b/server/src/test/resources/META-INF/services/org.apache.seata.core.store.db.DataSourceProvider
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.server.store.DbcpDataSourceProvider
 org.apache.seata.server.store.DruidDataSourceProvider
 org.apache.seata.server.store.HikariDataSourceProvider
\ No newline at end of file
diff --git 
a/server/src/test/resources/META-INF/services/org.apache.seata.metrics.exporter.Exporter
 
b/server/src/test/resources/META-INF/services/org.apache.seata.metrics.exporter.Exporter
index bfbcd91898..1b237f63ca 100644
--- 
a/server/src/test/resources/META-INF/services/org.apache.seata.metrics.exporter.Exporter
+++ 
b/server/src/test/resources/META-INF/services/org.apache.seata.metrics.exporter.Exporter
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.metrics.exporter.prometheus.PrometheusExporter
\ No newline at end of file
diff --git 
a/server/src/test/resources/META-INF/services/org.apache.seata.server.coordinator.AbstractCore
 
b/server/src/test/resources/META-INF/services/org.apache.seata.server.coordinator.AbstractCore
index d04b0aa190..538e5a4cae 100644
--- 
a/server/src/test/resources/META-INF/services/org.apache.seata.server.coordinator.AbstractCore
+++ 
b/server/src/test/resources/META-INF/services/org.apache.seata.server.coordinator.AbstractCore
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.server.transaction.at.ATCore
 org.apache.seata.server.transaction.tcc.TccCore
 org.apache.seata.server.transaction.saga.SagaCore
diff --git 
a/server/src/test/resources/META-INF/services/org.apache.seata.server.lock.LockManager
 
b/server/src/test/resources/META-INF/services/org.apache.seata.server.lock.LockManager
index 101ad55642..df4c40a0ca 100644
--- 
a/server/src/test/resources/META-INF/services/org.apache.seata.server.lock.LockManager
+++ 
b/server/src/test/resources/META-INF/services/org.apache.seata.server.lock.LockManager
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.server.storage.db.lock.DataBaseLockManager
 org.apache.seata.server.storage.file.lock.FileLockManager
 org.apache.seata.server.storage.redis.lock.RedisLockManager
\ No newline at end of file
diff --git 
a/server/src/test/resources/META-INF/services/org.apache.seata.server.session.SessionManager
 
b/server/src/test/resources/META-INF/services/org.apache.seata.server.session.SessionManager
index 0a51555caa..77f418b53f 100644
--- 
a/server/src/test/resources/META-INF/services/org.apache.seata.server.session.SessionManager
+++ 
b/server/src/test/resources/META-INF/services/org.apache.seata.server.session.SessionManager
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.server.storage.file.session.FileSessionManager
 org.apache.seata.server.storage.db.session.DataBaseSessionManager
 org.apache.seata.server.storage.redis.session.RedisSessionManager
\ No newline at end of file
diff --git 
a/spring/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.TargetClassParser
 
b/spring/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.TargetClassParser
index 1fea2e4a33..04547d7415 100644
--- 
a/spring/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.TargetClassParser
+++ 
b/spring/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.TargetClassParser
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.spring.SpringTargetClassParser
\ No newline at end of file
diff --git 
a/spring/src/main/resources/META-INF/services/org.apache.seata.spring.annotation.ScannerChecker
 
b/spring/src/main/resources/META-INF/services/org.apache.seata.spring.annotation.ScannerChecker
index 9f1e4ce09d..29bcf29442 100644
--- 
a/spring/src/main/resources/META-INF/services/org.apache.seata.spring.annotation.ScannerChecker
+++ 
b/spring/src/main/resources/META-INF/services/org.apache.seata.spring.annotation.ScannerChecker
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.spring.annotation.scannercheckers.PackageScannerChecker
 org.apache.seata.spring.annotation.scannercheckers.ConfigBeansScannerChecker
 org.apache.seata.spring.annotation.scannercheckers.ScopeBeansScannerChecker
\ No newline at end of file
diff --git 
a/sqlparser/seata-sqlparser-antlr/src/main/resources/META-INF/services/org.apache.seata.sqlparser.SQLRecognizerFactory
 
b/sqlparser/seata-sqlparser-antlr/src/main/resources/META-INF/services/org.apache.seata.sqlparser.SQLRecognizerFactory
index ea1e87b2db..fc6fdff358 100644
--- 
a/sqlparser/seata-sqlparser-antlr/src/main/resources/META-INF/services/org.apache.seata.sqlparser.SQLRecognizerFactory
+++ 
b/sqlparser/seata-sqlparser-antlr/src/main/resources/META-INF/services/org.apache.seata.sqlparser.SQLRecognizerFactory
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.sqlparser.antlr.AntlrDelegatingSQLRecognizerFactory
diff --git 
a/sqlparser/seata-sqlparser-antlr/src/main/resources/META-INF/services/org.apache.seata.sqlparser.antlr.SQLOperateRecognizerHolder
 
b/sqlparser/seata-sqlparser-antlr/src/main/resources/META-INF/services/org.apache.seata.sqlparser.antlr.SQLOperateRecognizerHolder
index fd78628150..8744bb6406 100644
--- 
a/sqlparser/seata-sqlparser-antlr/src/main/resources/META-INF/services/org.apache.seata.sqlparser.antlr.SQLOperateRecognizerHolder
+++ 
b/sqlparser/seata-sqlparser-antlr/src/main/resources/META-INF/services/org.apache.seata.sqlparser.antlr.SQLOperateRecognizerHolder
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.sqlparser.antlr.mysql.MySQLOperateRecognizerHolder
diff --git 
a/sqlparser/seata-sqlparser-druid/src/main/resources/META-INF/services/org.apache.seata.sqlparser.SQLRecognizerFactory
 
b/sqlparser/seata-sqlparser-druid/src/main/resources/META-INF/services/org.apache.seata.sqlparser.SQLRecognizerFactory
index 161becc52d..7389a0410b 100644
--- 
a/sqlparser/seata-sqlparser-druid/src/main/resources/META-INF/services/org.apache.seata.sqlparser.SQLRecognizerFactory
+++ 
b/sqlparser/seata-sqlparser-druid/src/main/resources/META-INF/services/org.apache.seata.sqlparser.SQLRecognizerFactory
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.sqlparser.druid.DruidDelegatingSQLRecognizerFactory
diff --git 
a/sqlparser/seata-sqlparser-druid/src/main/resources/META-INF/services/org.apache.seata.sqlparser.druid.SQLOperateRecognizerHolder
 
b/sqlparser/seata-sqlparser-druid/src/main/resources/META-INF/services/org.apache.seata.sqlparser.druid.SQLOperateRecognizerHolder
index 9ec1069c96..78decdb2af 100644
--- 
a/sqlparser/seata-sqlparser-druid/src/main/resources/META-INF/services/org.apache.seata.sqlparser.druid.SQLOperateRecognizerHolder
+++ 
b/sqlparser/seata-sqlparser-druid/src/main/resources/META-INF/services/org.apache.seata.sqlparser.druid.SQLOperateRecognizerHolder
@@ -1,3 +1,19 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.sqlparser.druid.mysql.MySQLOperateRecognizerHolder
 org.apache.seata.sqlparser.druid.mariadb.MariadbOperateRecognizerHolder
 org.apache.seata.sqlparser.druid.oracle.OracleOperateRecognizerHolder
diff --git 
a/sqlparser/seata-sqlparser-druid/src/main/resources/META-INF/services/org.apache.seata.sqlparser.util.DbTypeParser
 
b/sqlparser/seata-sqlparser-druid/src/main/resources/META-INF/services/org.apache.seata.sqlparser.util.DbTypeParser
index 100a0b8bb5..9691acefda 100644
--- 
a/sqlparser/seata-sqlparser-druid/src/main/resources/META-INF/services/org.apache.seata.sqlparser.util.DbTypeParser
+++ 
b/sqlparser/seata-sqlparser-druid/src/main/resources/META-INF/services/org.apache.seata.sqlparser.util.DbTypeParser
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.sqlparser.druid.DruidDelegatingDbTypeParser
diff --git 
a/tcc/src/main/resources/META-INF/services/org.apache.seata.core.model.ResourceManager
 
b/tcc/src/main/resources/META-INF/services/org.apache.seata.core.model.ResourceManager
index 62698d21ff..7b3f7f902f 100644
--- 
a/tcc/src/main/resources/META-INF/services/org.apache.seata.core.model.ResourceManager
+++ 
b/tcc/src/main/resources/META-INF/services/org.apache.seata.core.model.ResourceManager
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.rm.tcc.TCCResourceManager
diff --git 
a/tcc/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.InterfaceParser
 
b/tcc/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.InterfaceParser
index 780d4bcde4..72a9512ebf 100644
--- 
a/tcc/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.InterfaceParser
+++ 
b/tcc/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.InterfaceParser
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.rm.tcc.interceptor.parser.TccActionInterceptorParser
\ No newline at end of file
diff --git 
a/tcc/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.RegisterResourceParser
 
b/tcc/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.RegisterResourceParser
index 8599568580..0df6a52001 100644
--- 
a/tcc/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.RegisterResourceParser
+++ 
b/tcc/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.interceptor.parser.RegisterResourceParser
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.rm.tcc.resource.parser.TccRegisterResourceParser
\ No newline at end of file
diff --git 
a/tcc/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.remoting.RemotingParser
 
b/tcc/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.remoting.RemotingParser
index d4065cfd6f..443cddb8b5 100644
--- 
a/tcc/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.remoting.RemotingParser
+++ 
b/tcc/src/main/resources/META-INF/services/org.apache.seata.integration.tx.api.remoting.RemotingParser
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.rm.tcc.remoting.parser.LocalTCCRemotingParser
\ No newline at end of file
diff --git 
a/tcc/src/main/resources/META-INF/services/org.apache.seata.rm.AbstractRMHandler
 
b/tcc/src/main/resources/META-INF/services/org.apache.seata.rm.AbstractRMHandler
index e2d653426c..37cd2f8c84 100644
--- 
a/tcc/src/main/resources/META-INF/services/org.apache.seata.rm.AbstractRMHandler
+++ 
b/tcc/src/main/resources/META-INF/services/org.apache.seata.rm.AbstractRMHandler
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.rm.tcc.RMHandlerTCC
\ No newline at end of file
diff --git 
a/test/src/test/resources/META-INF/services/org.apache.seata.common.loader.LoaderTestSPI
 
b/test/src/test/resources/META-INF/services/org.apache.seata.common.loader.LoaderTestSPI
index ce4ab16a9d..d848065778 100644
--- 
a/test/src/test/resources/META-INF/services/org.apache.seata.common.loader.LoaderTestSPI
+++ 
b/test/src/test/resources/META-INF/services/org.apache.seata.common.loader.LoaderTestSPI
@@ -1,2 +1,18 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.common.loader.LoaderTestImpl1
 org.apache.seata.common.loader.LoaderTestImpl2
\ No newline at end of file
diff --git 
a/test/src/test/resources/META-INF/services/org.apache.seata.saga.engine.pcext.StateHandlerInterceptor
 
b/test/src/test/resources/META-INF/services/org.apache.seata.saga.engine.pcext.StateHandlerInterceptor
index 9342f05e87..46f0a75607 100644
--- 
a/test/src/test/resources/META-INF/services/org.apache.seata.saga.engine.pcext.StateHandlerInterceptor
+++ 
b/test/src/test/resources/META-INF/services/org.apache.seata.saga.engine.pcext.StateHandlerInterceptor
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.saga.engine.mock.MockStateHandlerInterceptor
\ No newline at end of file
diff --git 
a/test/src/test/resources/META-INF/services/org.apache.seata.saga.engine.pcext.StateRouterInterceptor
 
b/test/src/test/resources/META-INF/services/org.apache.seata.saga.engine.pcext.StateRouterInterceptor
index 732a1c3814..cf734aff78 100644
--- 
a/test/src/test/resources/META-INF/services/org.apache.seata.saga.engine.pcext.StateRouterInterceptor
+++ 
b/test/src/test/resources/META-INF/services/org.apache.seata.saga.engine.pcext.StateRouterInterceptor
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.saga.engine.mock.MockStateRouterInterceptor
\ No newline at end of file
diff --git 
a/tm/src/main/resources/META-INF/services/org.apache.seata.core.model.TransactionManager
 
b/tm/src/main/resources/META-INF/services/org.apache.seata.core.model.TransactionManager
index 5044000cca..8821353a53 100644
--- 
a/tm/src/main/resources/META-INF/services/org.apache.seata.core.model.TransactionManager
+++ 
b/tm/src/main/resources/META-INF/services/org.apache.seata.core.model.TransactionManager
@@ -1 +1,17 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
 org.apache.seata.tm.DefaultTransactionManager
\ No newline at end of file


---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscr...@seata.apache.org
For additional commands, e-mail: notifications-h...@seata.apache.org

Reply via email to