dir_one/my_package.pm dir_two/my_package.pm #### ##! /usr/local/bin/perl package my_package; require(Exporter); @ISA = qw(Exporter); @EXPORT = qw( %my_hash ); %my_hash = ( ... ); #### #!/usr/bin/perl -w use Data::Dumper; require dir_one::my_package q( %my_hash ); print "%s\n", Dumper(\%my_hash); require dir_two::my_package q( %my_hash ); print "%s\n", Dumper(\%my_hash); #### syntax error at ./my_script.pl line 7, near "require dir_one::my_package qw( %my_hash )" Execution of ./my_script.pl aborted due to compilation errors.