I have a flutter code where the first widget is the Carousel Slider. It was running fine till I updated flutter. Now it shows the following error
/C:/Users/Family/AppData/Local/Pub/Cache/hosted/pub.dev/carousel_slider-4.2.1/lib/carousel_slider.dart:9:1: Error: 'CarouselController' is imported from both 'package:carousel_slider/carousel_controller.dart' and 'package:flutter/src/material/carousel.dart'.
import 'carousel_controller.dart';
^^^^^^^^^^^^^^^^^^
/C:/Users/Family/AppData/Local/Pub/Cache/hosted/pub.dev/carousel_slider-4.2.1/lib/carousel_slider.dart:48:15: Error: 'CarouselController' is imported from both 'package:carousel_slider/carousel_controller.dart' and 'package:flutter/src/material/carousel.dart'.
: CarouselController() as CarouselControllerImpl,
^^^^^^^^^^^^^^^^^^
/C:/Users/Family/AppData/Local/Pub/Cache/hosted/pub.dev/carousel_slider-4.2.1/lib/carousel_slider.dart:62:15: Error: 'CarouselController' is imported from both 'package:carousel_slider/carousel_controller.dart' and 'package:flutter/src/material/carousel.dart'.
: CarouselController() as CarouselControllerImpl,
^^^^^^^^^^^^^^^^^^
Target kernel_snapshot_program failed: Exception
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:compileFlutterBuildDebug'.
> Process 'command 'D:\Apps\flutter\bin\flutter.bat'' finished with non-zero exit value 1
* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 9s
I tried hiding the CarouselController from the Material.dart package but still it keeps showing the same thing.
Following is my code
import 'package:carousel_slider/carousel_slider.dart';
import 'package:flutter/material.dart' hide CarouselController;
import 'package:reema_swad_cooking_class/bottomnavigationbar.dart';
import 'package:reema_swad_cooking_class/calendar.dart';
import 'package:reema_swad_cooking_class/coursedescription.dart';
import 'courselist.dart';
import 'sololist.dart';
import 'appbar.dart';
class HomeScreen extends StatefulWidget {
const HomeScreen({super.key});
@override
State<StatefulWidget> createState() {
return _HomeScreen();
}
}
class _HomeScreen extends State<HomeScreen> {
static final GlobalKey<ScaffoldState> _scaffoldKey =
GlobalKey<ScaffoldState>();
var selectedPage = 0;
CarouselController buttonCarouselController = CarouselController();
String getCourseIdFromImageName(String imageName) {
String courseId = imageName.replaceAll(RegExp(r'[^0-9]'), '');
return courseId;
}
@override
Widget build(BuildContext context) {
return Scaffold(
key: _scaffoldKey,
appBar: const CustomAppBar(),
bottomNavigationBar: const CustomBottomNavigationBar(),
body: SingleChildScrollView(
child: Column(
children: [
const Padding(
padding: EdgeInsets.only(top: 16.0, right: 16, left: 16),
child: Row(
children: [
Expanded(
child: Text(
'Upcoming Classes',
style: TextStyle(
fontSize: 24,
fontWeight: FontWeight.bold,
),
),
),
],
),
),
LayoutBuilder(builder: (context, constraints) {
double aspectRatio = 16 / 9;
double containerHeight = constraints.maxWidth / aspectRatio;
return SizedBox(
width: constraints.maxWidth,
height: containerHeight,
child: CarouselSlider(
options: CarouselOptions(
height: double.infinity,
autoPlay: true,
autoPlayInterval: const Duration(seconds: 4),
enableInfiniteScroll: true,
viewportFraction: 0.95,
enlargeCenterPage: true,
),
and then the rest of my code. If the rest of the code is also required I will edit the question to add it.
You should upgrade carousel_slider ^5.0.0.
[FIX] Rename CarouselController to CarouselSliderController
With this version you should replace CarouselController with CarouselSliderController.
CarouselSliderController buttonCarouselController = CarouselSliderController();
Anyway using
import 'package:flutter/material.dart' hide CarouselController;
should work as well. I tried it on my side and it is working. Maybe you need to restart your IDE.