设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5725|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & |3 B' U4 p& `6 L3 K
, }  S1 n- A% `  }0 _( S
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% t( P1 E6 E2 @+ |. O% y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 t7 w& F' ?3 d; Mswarm.SignatureNotFoundException
" m+ c3 |! r+ x" o. i2 _# O4 X        at swarm.Selector.<init>(Selector.java:76); H) Y$ v: O/ p5 x, a, n
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37), m. }8 c8 a- r& E0 N' c
        at ActionGroupDemo.main(ActionGroupDemo.java:67)3 H& H; {7 ~5 V) h+ u
& L+ @6 F+ U2 E
1 Y6 l- q3 N' R
import swarm.objectbase.SwarmImpl;
) a" c& f1 R+ V/ ]8 P; Limport swarm.objectbase.Swarm;
+ J/ o9 W2 }2 U" Simport swarm.activity.ScheduleImpl;& S+ E& B6 ?6 S( ^
import swarm.activity.Activity;
! {# I5 g6 S9 o% \  Iimport swarm.activity.ActionGroupImpl;
( J$ Y+ }( t1 _& v  s3 ]import swarm.collections.ListImpl;
1 V. C1 A8 U9 f; Dimport swarm.defobj.Zone;
; a5 J! S4 P7 y+ q) Wimport swarm.Globals;
6 D6 R. Z3 L2 W7 T0 }import swarm.Selector;, o5 R* w& I: p+ p* c  q4 q
import swarm.activity.ActionGroup;
' E  H- A9 i6 Bclass Agent {( c$ I5 q1 Q  x0 m; C
        char id;
% \, V& j8 Z0 f& U
0 p( M* M$ ?# `$ k$ l" _. g        Agent(char id) {
7 `8 g7 l% a5 E; f6 d7 _                this.id = id;5 x' A# ^, a, I
        }4 b! X7 l% f. ~
6 z( a  s9 d, f9 }% d$ |
        public void agentStep() {
( `9 W8 G' o; U- k/ f1 |3 f4 S  R                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 M7 [- O* E; Z" q        }6 o6 i1 N$ H! r! z5 c* }7 s3 l
}: ~! f% b/ X) k* u

1 }0 A( p& j9 z3 B4 cpublic class ActionGroupDemo extends SwarmImpl {
, n  ~) d. S" {' |        ScheduleImpl schedule;
, [) H7 |+ D- _        ActionGroupImpl actionGroup;
. T6 k' B. \4 J6 F' w* [        ListImpl list;  ~- ?% _1 Q" U6 ~3 l/ q
        char Id = 'a';8 T4 M9 a( r+ g; e
, M" L4 ^2 N4 S, G- K
        ActionGroupDemo(Zone aZone) {2 S6 h  n+ R+ Z# {% ]
                super(aZone);
: ^7 {0 R5 v8 H4 C0 n" g                list = new ListImpl(aZone);# X, P8 j, p; D0 \/ a; A
                swarmSetp();
+ i# H% @/ p6 i9 u6 Y4 S. F                actionGroup = new ActionGroupImpl(aZone);6 D$ k( ]% R: [, g6 D! E
                schedule = new ScheduleImpl(aZone);
/ F' b5 E* {! E- C% S, t                try {
# G: Z4 F; g- T" G                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 h# s3 E& P0 R0 Y7 x) c6 Z) v/ B% h0 ?                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( F; e# K  z: B                        
4 K/ L1 A& l( l1 w4 G                        actionGroup.createActionForEach$message(list, agentSel);
6 f, H3 w3 B" q, {                        actionGroup.createActionTo$message(this, swarmSel);
( g9 a! X- I0 r( Q  C7 A- h                        schedule.at$createAction(0, actionGroup);
- ]# M3 h# e8 ^( U/ `                        schedule.at$createAction(1, actionGroup);
% x3 m( D. h# J) D                        schedule.at$createAction(2, actionGroup);
0 f0 y( l- G" W( F/ _( e. j& L
& D- i( h& s* [4 h* J0 A; ^8 r: }* c                } catch (Exception e) {* A) n+ F" w6 v3 ?
                        e.printStackTrace(System.err);
' }% J: X- b' }- g                        //System.out.println(e);
4 o: h/ f9 g; s! n( x6 i( f) l                        System.exit(1);7 D3 f1 w% a2 F0 o/ K
                }5 S0 Z' G) L  R7 U

& D2 K4 ?8 g: T( h
( x1 \4 z7 u; v# v! w% o' ~6 u        }
: q1 b$ @' u9 k1 L& d
: Z5 X7 [6 l0 n7 {) P# R        private void swarmSetp() {
! c4 A5 E1 E1 \( ]! m7 U                list.addLast(new Agent(Id));
, `# C$ f& s! k$ k1 s                Id++;
5 a" R3 k% u$ S$ ?2 }        }( f7 z; L6 Z1 J) }4 `; b4 s
1 t+ [! |$ z, l3 `
        public Activity activateIn(Swarm context) {
' Z, w" v2 }0 O                super.activateIn(context);
. `# o2 M8 s3 K& |                schedule.activateIn(this);4 _( F: F0 q9 |" N
                return getActivity();# i" z6 V4 h! H1 p! W& G- d
        }$ M- n( P6 W) r1 o

9 J$ g4 u: v7 U! f        public static void main(String[] args) {( t8 p( j( H  T- b, a' a3 l
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 ~! q5 ^, M7 h/ @, J
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- }/ C5 N% m0 F* w( H  L7 H                swarms.buildObjects();
' f5 a' S& l2 I3 L                swarms.buildActions();
# K* M5 a6 N/ D4 d+ L" o                swarms.activateIn(null).run();
; j* ^: i% Q( s( N3 |        }
) w! L- F3 u: R9 W) B' k' u
  o& t1 W3 u0 p% ^}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-21 14:45 , Processed in 0.016949 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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