设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11434|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' A% `! j+ V2 j, h+ w1 V% a6 A4 }

# q* k3 j: X, h3 L5 y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& u, ?3 s& n% o以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 J8 q7 b( C; M  h( `& P. R; B5 _
swarm.SignatureNotFoundException
9 T% ~; d0 K; j* T; I        at swarm.Selector.<init>(Selector.java:76)* H* m) ]9 A" L
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
' W5 G* K7 W5 B3 _        at ActionGroupDemo.main(ActionGroupDemo.java:67). ~4 G' W7 F) p9 U
/ v6 S1 `7 [( ?4 R+ _8 v8 ?4 u
+ N* e# R+ W. \& D+ _$ }2 V
import swarm.objectbase.SwarmImpl;' p) o5 M& y' J8 ?, f0 S
import swarm.objectbase.Swarm;
6 H5 ~1 W! Z' pimport swarm.activity.ScheduleImpl;
5 N0 U' W: S$ N+ wimport swarm.activity.Activity;
9 |: k2 g7 D/ C1 Y9 kimport swarm.activity.ActionGroupImpl;9 a& j2 o+ l3 H! A
import swarm.collections.ListImpl;
( e0 q3 |7 ?% E. [import swarm.defobj.Zone;
% ]$ Y7 H$ A" G* @/ w; k3 \import swarm.Globals;
2 k9 ~9 }$ q- g/ b! Himport swarm.Selector;  z5 @* |/ g2 b* T! E
import swarm.activity.ActionGroup;
& K" S* i# B- ^0 I& ]& H8 ]* @class Agent {
0 v4 s$ \5 y2 h/ G% w        char id;
2 S( s2 t- @7 v
3 [$ {% D$ E1 v" \( K/ W        Agent(char id) {: T5 e+ `! ?, U) f/ q, N- W5 v) |: g, A
                this.id = id;
9 ?/ W2 R0 ~9 ^& U! A2 x* }( r$ Z        }
4 F% Z3 H& p: A$ {# e
% x# S  Z) Q2 K3 [6 Y0 s& K7 `" Z) J6 o        public void agentStep() {4 N; N4 Y' P$ e
                System.out.println(id + ":" + Globals.env.getCurrentTime());
, v- C( |( b, |7 o( V+ A: z6 X        }& `- ^3 w) d/ J
}7 m, A/ L8 [2 ~
4 _; u3 {7 |4 ]- v
public class ActionGroupDemo extends SwarmImpl {4 m2 K7 e8 P4 R) m1 v8 f
        ScheduleImpl schedule;* o2 Q' [& J8 n. i) W- q
        ActionGroupImpl actionGroup;
/ W$ D- o5 [* ~5 ^/ i        ListImpl list;
6 X2 i- h6 Z, @9 f+ B' J        char Id = 'a';
; K  ]. L) F1 g3 P" ^* L( v$ E4 w# o4 h0 o6 k& ~
        ActionGroupDemo(Zone aZone) {
3 H- {4 c8 f4 W  ^# a                super(aZone);
. D" A# l5 u% Y2 v% A9 o9 m                list = new ListImpl(aZone);$ S; S  ]" f1 C; Q
                swarmSetp();
3 c. _7 `8 J0 E% T                actionGroup = new ActionGroupImpl(aZone);! l/ W+ w9 y! M/ x3 [0 H6 V' ]
                schedule = new ScheduleImpl(aZone);
1 i! @' ]" L. d, }& c+ Y( d2 W  S) g                try {3 ^  ]' K4 D- e! i
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ H' a. t* E% L; q                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# Y& E' F4 @* f# p, ~7 F! v( @
                        
% A$ V8 _$ `+ R7 a                        actionGroup.createActionForEach$message(list, agentSel);3 H% S+ j' x8 n/ x
                        actionGroup.createActionTo$message(this, swarmSel);
/ H. e" d! Z2 B4 p: R* d8 {: x                        schedule.at$createAction(0, actionGroup);  ^3 u. i7 N8 u. g, N" C, |
                        schedule.at$createAction(1, actionGroup);
6 ^' a. w; F. ~                        schedule.at$createAction(2, actionGroup);* ~1 Q/ F' |* Y2 H

8 @% y' [  I" C! y                } catch (Exception e) {6 o5 S* Y; }& ], P8 \
                        e.printStackTrace(System.err);
, W+ g$ w5 @6 S                        //System.out.println(e);
5 c5 X, X: S+ H                        System.exit(1);
, _- @( t+ A6 W5 x- B                }
2 ~) x" K# d) Z0 q
' |; H$ O+ n. E7 J
" v1 ~$ `. t4 d        }
- b6 i' l8 L8 ^# v6 u7 k+ n# N! f2 S# M5 t  ~) n* v
        private void swarmSetp() {2 w( Q8 [% R& H. W' b
                list.addLast(new Agent(Id));6 o! p; n' i& n) u+ I
                Id++;
1 c2 N$ ~( j! z0 Y0 d6 |% g        }2 y/ ?' A- c, x& C; _2 y

' b. G* q( x6 l. v( G( b        public Activity activateIn(Swarm context) {
& c: C1 c7 }: ?: W5 @                super.activateIn(context);
3 I! W: _) c/ H- O                schedule.activateIn(this);5 j0 G- [' }* E0 s
                return getActivity();) _- v9 j, y' d) G7 Q7 S# S1 R. o
        }2 Y( V8 P, B2 @1 U3 w) @
; M. C. }# a+ V/ H
        public static void main(String[] args) {6 E5 T$ t/ l& m, Z: V
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 g4 |: `7 ^! p8 W: |7 G                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 }0 b' K5 U# P( E5 k* L
                swarms.buildObjects();5 u9 B  Q/ M1 M) N3 T8 J
                swarms.buildActions();
5 A; a. Q3 q1 L+ M7 q; ~. O                swarms.activateIn(null).run();
7 |7 Z0 f' r7 K+ f, x( A; d' b8 E        }
, \8 x- n" q3 s& C# v* ?( X  M+ W$ |# {# ^+ J& D
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-12 09:40 , Processed in 0.014703 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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