Module does not show in admin under modules in oxid 6.2.2

Dear All,

I just installed oxid 6.2.2 and tried to port a simple old module from oxid-ce-4.10.1 without using composer.

The module does not show up in the admin under extension -> modules

The error logs under source/log are empty.

vendormetadata:

/**
 * Metadata version
 */
$sVendorMetadataVersion = '1.0';

metadata:

/**
 * Metadata version
 */
$sMetadataVersion = '1.1';
$sDir = 'gc/gc_article_export/';

/**
 * Module information
 */
$aModule = array(
    'id' => 'gc_art_export',
    'title' => 'Article Export ',
    'description' => 'This module allows one to export all articles in the shop as a csv file',
    'description' => array(
        'de' => '',
        'en' => '',
    ),
    'thumbnail' => '',
    'version' => '1.1',
    'email' => '[email protected]',
    'author' => 'test',
    'url' => '',
    'files' => array(
        'gc_art_export'                          => $sDir . 'application/controllers/gc_art_export.php',
        'gc_exporter'                          => $sDir . 'application/models/gc_exporter.php',
    ),
    'extend' => array(
        /** components widgets */
        /** controllers admin */
        /** controllers */
        /** models */
        /** core */
    ),
    'templates' => array(
        "gc_art_export.tpl"             => $sDir . "/application/views/admin/tpl/gc_art_export.tpl",
	),
    'blocks' => array(
        /** tpl admin */
        /*array(
            'template' => 'article_main.tpl',
            'block' => 'admin_article_main_form',
            'file' => '/application/views/admin/tpl/gc_export_main.tpl'
        ),*/
    ),
    'settings' => array(
        array('group' => 'gc_art_export', 'name' => 'gc_example_bool', 'type' => 'bool', 'value' => false),
        array('group' => 'gc_art_export', 'name' => 'gc_example_string', 'type' => 'str', 'value' => '')
    ),
    'events' => array(),
);


directory structure:
drwxr-xr-x  3 www-data www-data 4096 Aug 26 13:07 .
drwxr-xr-x 11 www-data www-data 4096 Aug 26 13:07 ..
drwxr-xr-x  3 www-data www-data 4096 Aug 26 13:07 gc_article_export
-rw-r--r--  1 www-data www-data    0 Sep 14  2017 vendormetadata.php
/var/www/testshop/source/modules/gc#


drwxr-xr-x 3 www-data www-data 4096 Aug 26 13:07 .
drwxr-xr-x 3 www-data www-data 4096 Aug 26 13:07 ..
drwxr-xr-x 5 www-data www-data 4096 Aug 26 13:07 application
-rw-r--r-- 1 www-data www-data  230 Nov  2  2018 menu.xml
-rw-r--r-- 1 www-data www-data 1460 Aug 26 13:06 metadata.php
/var/www/testshop/source/modules/gc/gc_article_export


Server Info:
mysqld  Ver 10.1.45-MariaDB-0+deb9u1 for debian-linux-gnu on x86_64 (Debian 9.12)
php 7.4.9
Server version: Apache/2.4.25 (Debian)
oxid 6.2.2 ce

Does anyone have any idea what i might be missing?

did you follow the documentation for module isntallation without composer?
https://docs.oxid-esales.com/developer/en/6.2/development/modules_components_themes/module/installation_setup/installation.html

ah I see - so you have to use composer regardless.

I will try it out, thank you.

At this point you need composer for registering namespaces, but you could do those changes manually.
Since old modules do not use namespaces, you should just be fine without the last composer step.
(this should work is you just want to install an old module, but if you want to update the module for oxid 6, you should definitely go with composer)

thx a lot, turns out i was just missing this step:

vendor/bin/oe-console oe:module:install-configuration <module sourcecode path>

I guess i was still used to the old way where oxid noticed new modules itself.