डेटा बाइंडिंग और व्यू बाइंडिंग दोनों को सक्षम करने के बाद
`
buildFeatures {
viewBinding true
dataBinding true
}`
और ऐप चलाते समय यह त्रुटि देना शुरू कर दिया लेकिन ग्रेडेल को सिंक करते समय नहीं। कैश को साफ़/पुनर्निर्माण और अमान्य करने और पुनरारंभ करने का प्रयास किया, कुछ भी मदद नहीं कर रहा है। सब कुछ सही ढंग से क्रमिक रूप से जोड़ा गया।
> Task :app:kaptDebugKotlin
^
symbol: class ConstraintLayout
location: class ActivityAeBinding app/build/generated/data_binding_base_class_source_out/debug/out/com/packagename/databinding/ActivityAeBinding.java:19: error: cannot find symbol
private ActivityAeBinding(@NonNull ConstraintLayout rootView) {
^
symbol: class ConstraintLayout
location: class ActivityAeBinding /app/build/generated/data_binding_base_class_source_out/debug/out/com/databinding/ActivityAeBinding.java:25: error: cannot find symbol
public ConstraintLayout getRoot() {
^
symbol: class ConstraintLayout
location: class ActivityAeBinding
> Task :app:kaptDebugKotlin FAILED
Execution failed for task ':app:kaptDebugKotlin'.
> A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptExecution
> java.lang.reflect.InvocationTargetException (no error message)
यह समस्याग्रस्त वर्ग है जिसके बारे में कंपाइलर ऐप चलाते समय शिकायत कर रहा है
// Generated by view binder compiler. Do not edit!
package com.example.databinding;
import android.support.constraint.ConstraintLayout;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.viewbinding.ViewBinding;
import com.sah.android.apps.mydrawer.R;
import java.lang.NullPointerException;
import java.lang.Override;
public final class ActivityAeBinding implements ViewBinding {
@NonNull
private final ConstraintLayout rootView;
private ActivityAeBinding(@NonNull ConstraintLayout rootView) {
this.rootView = rootView;
}
@Override
@NonNull
public ConstraintLayout getRoot() {
return rootView;
}
@NonNull
public static ActivityAeBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivityAeBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_ae, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivityAeBinding bind(@NonNull View rootView) {
if (rootView == null) {
throw new NullPointerException("rootView");
}
return new ActivityAeBinding((ConstraintLayout) rootView);
}
}
2 जवाब
इसका उत्तर देना क्योंकि जब आपके डेटा बाइंडिंग या व्यू बाइंडिंग के साथ कुछ अजीबोगरीब गलत है, तो इस पर जोर देना चाहते हैं कि यह लगभग निश्चित है कि लेआउट फाइलों में कुछ समस्या है।
जैसा कि मेरे मामले में भ्रमित करने वाला हिस्सा था, उत्पन्न बाध्यकारी वर्ग मेरे प्रोजेक्ट आईडी का हिस्सा नहीं था, यह क्यों उत्पन्न कर रहा था, लेकिन मेरी सभी लेआउट फ़ाइलों को खोजने के बाद मैंने समर्थन पुस्तकालय से एक आयात की खोज की, न कि androidx ने इस अजीब मुद्दे को बनाया।
आप देखें बाइंडिंग और डेटा बाइंडिंग।
मेरा सुझाव है कि आप इनमें से किसी एक को हटा दें और पुनः प्रयास करें।
यदि आप अभी भी चुनौती का सामना करते हैं, तो पूरी फाइलें पोस्ट करें।
कृपया ध्यान दें कि, View Binding
का उद्देश्य सरल उपयोग के मामलों को संभालना है और View Binding
की सीमाएं Data Binding
में शामिल हैं। बाद में जटिल कार्यक्षमता को संभालता है। अधिक स्पष्टता के लिए कृपया उनके दस्तावेज़ों को पूरी तरह से पढ़ें।
साथ ही, कृपया इस पेज पर जाएं और फिर तुलना करें अनुभाग पर जाएं डेटा बाइंडिंग
और फिर अंत में, कृपया इस पहले से उत्तर दिए गए प्रश्न को देखें यहां .
संबंधित सवाल
जुड़े हुए प्रश्न
नए सवाल
android
एंड्रॉइड Google का मोबाइल ऑपरेटिंग सिस्टम है, जिसका उपयोग प्रोग्रामिंग या डिजिटल डिवाइस (स्मार्टफोन, टैबलेट, ऑटोमोबाइल्स, टीवी, वियर, ग्लास, IoT) को विकसित करने के लिए किया जाता है। एंड्रॉइड से संबंधित विषयों के लिए, एंड्रॉइड-विशिष्ट टैग जैसे कि एंड्रॉइड-इरादे, एंड्रॉइड-गतिविधि, एंड्रॉइड-एडॉप्टर आदि का उपयोग करें। विकास या प्रोग्रामिंग के अलावा अन्य प्रश्नों के लिए, लेकिन एंड्रॉइड फ्रेमवर्क से संबंधित हैं, इस लिंक का उपयोग करें: https: // android.stackexchange.com।