设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5147|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 - B% H0 K3 y5 ?# T0 D
8 A1 }  M# c3 Y' h% L0 v5 y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' ]1 t  E- b) _* |0 u以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; d+ h1 _& F& L$ ^
swarm.SignatureNotFoundException, o6 V1 n$ x7 J9 `6 C; j4 k1 H& L
        at swarm.Selector.<init>(Selector.java:76)1 |0 m: A3 A6 C& }4 x5 k
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; X' b4 a  J) O$ g( f7 |        at ActionGroupDemo.main(ActionGroupDemo.java:67)" ]& Y* g( Q/ t0 A" a) c- S4 ~1 N

5 c2 \) }! Q/ y
& u6 ]; \5 k- K8 Q7 M* Uimport swarm.objectbase.SwarmImpl;! c3 g. I7 p; E
import swarm.objectbase.Swarm;
$ t, ?5 T9 Q  j" o% a0 J8 mimport swarm.activity.ScheduleImpl;
6 ]) o: W# C6 e4 {( ~; A! R* Mimport swarm.activity.Activity;0 R* d' |2 |: R2 m. }0 q$ g  I/ f
import swarm.activity.ActionGroupImpl;
' V5 t( V$ v* w+ Rimport swarm.collections.ListImpl;
6 K% |# u3 K  t- F/ Aimport swarm.defobj.Zone;
0 v% ]: f3 \; M+ s/ Pimport swarm.Globals;/ _. o' B2 P, U3 |5 v9 `/ {! S
import swarm.Selector;3 |# A# y( ^- `8 ]
import swarm.activity.ActionGroup;
8 |: s9 k+ l! j: Jclass Agent {+ _! T! i" o8 m, l4 @4 `  q( l
        char id;' s. T! B  d1 L6 d1 W
5 G0 m& a- e. D+ {
        Agent(char id) {
$ v% m+ _3 L) }8 ]1 y9 r                this.id = id;) s# ~1 [4 m: j' a
        }, N" z. m( F+ d& ]* H) H, [

# d# g" h* E! ]8 c        public void agentStep() {
# w, m2 N- v0 S' t% i% V) M5 [                System.out.println(id + ":" + Globals.env.getCurrentTime());) f' r  h& O/ [$ E$ u" _
        }
6 I( P: c3 H* w' I+ x}3 g/ w1 i/ W$ X$ A
1 ]; x2 g: J- h5 J
public class ActionGroupDemo extends SwarmImpl {; J+ r4 j& t( H! Y
        ScheduleImpl schedule;
% W# U9 n  F7 m8 V7 l        ActionGroupImpl actionGroup;! U+ o) j6 ?8 ]8 v* [# q
        ListImpl list;
0 M% s& m: g( O6 F6 l        char Id = 'a';: A$ l+ Q1 M' r$ |
4 \. [) Y2 R0 Q) `$ S
        ActionGroupDemo(Zone aZone) {7 _. \2 B3 h! r
                super(aZone);$ o1 R+ {$ R/ ^2 x4 [4 l) ]  u0 H
                list = new ListImpl(aZone);
% d3 V* G: ^/ K" ]# C1 n  s                swarmSetp();' P' v/ U2 ]3 x( M1 t  y
                actionGroup = new ActionGroupImpl(aZone);, n( P+ H+ O' t, {' X8 s
                schedule = new ScheduleImpl(aZone);' r! ]0 P+ m9 l9 c
                try {' m3 r/ h+ N5 Y7 g1 E' Y
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 {" u4 [6 ~, I7 T% k                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' ]+ \6 _. ?0 u. C8 f                        
' i1 @3 {* J- A; j                        actionGroup.createActionForEach$message(list, agentSel);4 b) y2 r: p4 f6 I( g  \$ G
                        actionGroup.createActionTo$message(this, swarmSel);0 z  h2 z% A3 p% v6 W' c$ U5 y
                        schedule.at$createAction(0, actionGroup);/ r$ ?7 d4 A+ f5 o$ L
                        schedule.at$createAction(1, actionGroup);% |& p& b+ a+ b; m5 }' K' ^) D
                        schedule.at$createAction(2, actionGroup);
+ C: I) z. t" z$ r4 X5 c$ L7 M& C
5 x9 j+ `) A- N. x                } catch (Exception e) {
! _+ \5 W/ K' W& u" A                        e.printStackTrace(System.err);
( n( Z0 K: @) [* O& w! f( e' x/ }                        //System.out.println(e);# z& M8 n+ P- X
                        System.exit(1);7 V- ?0 u; f( m- H1 W* z0 G* i
                }/ B7 T; V7 j( D

+ F! g& b. X- e
1 V: H! G. v9 h8 ~        }
; F+ o* D3 X# s6 \, I& ^
$ i+ [7 z8 h5 y- K2 B2 q; S6 E' n7 X        private void swarmSetp() {& x6 r# M+ s8 l* {( _4 U
                list.addLast(new Agent(Id));
* U, @( i+ Q! b6 Y% I% v                Id++;7 ]+ @5 T, ]# |; x6 H
        }) ^' m6 @  j. e. A9 z. T* `% L; m
5 w& ]" Y/ x2 C0 e- h. P5 Q
        public Activity activateIn(Swarm context) {
' N9 z, t# n8 \/ o8 W0 F                super.activateIn(context);) j8 r! k5 f1 e
                schedule.activateIn(this);
/ i0 t0 K/ o4 I! K                return getActivity();2 `: B2 \7 m# k2 y
        }
- ^% ?0 T  D) |/ M/ q7 ~; e. ~( \  j, ~
        public static void main(String[] args) {) N2 G4 s4 i! g; R' Z7 B
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* [1 b7 q2 c1 j- |+ E                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 L0 m# a5 X) m0 p                swarms.buildObjects();
5 Z0 o/ F: P9 {( p8 ]                swarms.buildActions();
4 X2 b, G' ]0 z                swarms.activateIn(null).run();
6 Q3 O/ n" t) P; c. m( r8 A        }* @% Z" I+ Y1 ~, V# Q  V$ y% Y

3 Q, w" {8 F' l}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2025-11-26 12:57 , Processed in 0.018468 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表