设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5086|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 `# ^0 `7 b2 g7 f+ m& V% }

7 h+ c5 Y8 a+ x: Y8 h$ l! m本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% R1 ~! F7 K* n# N5 {/ v$ N$ i1 u5 r: x
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 g& F2 ]4 e2 Q: J# W2 v4 d( R( y
swarm.SignatureNotFoundException
, g8 Q) R" i; I% w3 x        at swarm.Selector.<init>(Selector.java:76)& Y) k4 y2 d" x8 t: F0 ^
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 R/ T) L# w3 G) t! R        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 o9 H/ o& G; o; M) B& ]' T& t! X& W
% B% S( g$ z- [4 Q6 u& R! X% X

: W9 v" n0 R  ^import swarm.objectbase.SwarmImpl;
* d- {9 v/ a1 oimport swarm.objectbase.Swarm;- O- d: y" T: w, P( b& a. x# r& z
import swarm.activity.ScheduleImpl;
- w5 b3 E6 x! M' {% gimport swarm.activity.Activity;
4 \1 t: {. u( a- Z+ K2 f; @0 A+ Ximport swarm.activity.ActionGroupImpl;
/ \" L5 Q: @7 V* v; Z* |/ P" Simport swarm.collections.ListImpl;0 Z! n1 [, Q0 N
import swarm.defobj.Zone;
& ~; h3 g6 Z7 {/ c$ `) j# _0 R/ Qimport swarm.Globals;5 p) r. K0 {0 n8 S  N
import swarm.Selector;
7 N! u( f1 b  E& j' \import swarm.activity.ActionGroup; / X8 s, c: j+ ]
class Agent {3 ], ]( k% ~1 z7 x2 b# Z' g& k
        char id;
0 j3 w8 s5 @. u3 z% c  t8 A
7 @7 K' Z* E0 @& ~. F1 C; b3 J% C        Agent(char id) {% i* X) E" ~4 Y  _, ^. q4 U2 N8 ?  U/ X
                this.id = id;
. d# O, b8 S' P/ k' e. _) f9 \. {        }  ]  G# F+ r! L" O! J
. i0 t5 d3 \$ b) W  ^- R
        public void agentStep() {$ H  U1 T8 b, x
                System.out.println(id + ":" + Globals.env.getCurrentTime());( n) Y6 @+ M2 }  v' z
        }( q7 V3 g) Q; \1 J% J! C8 |
}/ [: h+ g9 d# `5 S, E4 p
7 A$ l+ @3 r6 P
public class ActionGroupDemo extends SwarmImpl {3 j; ]* m+ \: X3 r
        ScheduleImpl schedule;" N4 [7 B& \3 z, \2 f1 Z- r6 m# S. B9 E
        ActionGroupImpl actionGroup;1 Q8 z' k; L5 p
        ListImpl list;4 y) ?7 G, w; y3 \/ c  T, f
        char Id = 'a';
: S5 p1 h  h0 u
) P3 n; F0 x8 u( v8 y4 v) Q        ActionGroupDemo(Zone aZone) {3 B. e8 b- Q4 y+ M
                super(aZone);
5 s6 ?4 O. |; ]. \: u8 _6 v                list = new ListImpl(aZone);. U( c& v: }. a1 q8 ^# M
                swarmSetp();
+ r+ T, J8 W6 q" F; t' h( P" e                actionGroup = new ActionGroupImpl(aZone);, K7 M8 W1 [2 x$ b5 y( F  z
                schedule = new ScheduleImpl(aZone);7 z8 p: ?7 b, c4 @! [. A/ E/ G
                try {) p1 o+ b+ E8 y3 b1 t3 F9 y. b
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ y9 V0 T2 R' }9 v7 _& m% h! c! j                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ g$ j2 {0 c9 A. @, }( E% R
                        
+ x: S. W8 x9 x. z                        actionGroup.createActionForEach$message(list, agentSel);
- {" s" e! F$ M; ^                        actionGroup.createActionTo$message(this, swarmSel);6 }; c2 X5 z; n# y) ~; F
                        schedule.at$createAction(0, actionGroup);
, j: C6 s( {3 P2 N0 T                        schedule.at$createAction(1, actionGroup);
, O4 d" M& w' }+ P' C5 X                        schedule.at$createAction(2, actionGroup);0 y$ A/ C1 {1 {/ ^9 X- u
- Y' D, F. o2 t  M& ~. f$ l$ T- g
                } catch (Exception e) {3 {5 B1 W7 z& x+ d& u
                        e.printStackTrace(System.err);
# D: D' o0 v7 m# d, j" h9 ~/ T                        //System.out.println(e);
! a0 K" g. O3 K% x1 e0 g+ l                        System.exit(1);* t! P1 F/ f* x' W1 n. s$ O1 ?
                }
4 ^! H5 r7 r: i
2 ^; W# E: L: [( R( o
4 e" V3 D8 V% q+ w        }
, Z, }: ]- e4 b' B: N1 Q& x. ~+ H
% L- J# s0 R" ]7 `" A+ s; p        private void swarmSetp() {: l: [+ m% B% u6 g5 m$ h' b
                list.addLast(new Agent(Id));- \- g$ g- B5 j6 V
                Id++;6 ^( N% w- a2 [
        }
0 N7 i5 p; [# T8 G9 u2 c, `- d( Q8 Q. W% v6 c+ ?$ V; P" F
        public Activity activateIn(Swarm context) {; U+ j; L$ T4 C1 z
                super.activateIn(context);% u' W8 t! x& d% S4 ]& ?
                schedule.activateIn(this);
& L9 {; t* _9 W% h6 Y2 \" q                return getActivity();- x5 y4 |0 f1 N& |0 I; [
        }
. q! r5 a# {( P0 I! Z0 j6 n. }! m6 s9 f
        public static void main(String[] args) {
! Z! t2 ^( r2 m! P& s- b                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ q5 {8 j  C2 I" Y: ?$ n- b                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* ]2 ^( K( l$ U6 `
                swarms.buildObjects();
2 R  F3 A7 [' ~& ]2 F: w9 c- r                swarms.buildActions();
, A5 v; _% H& @6 W$ u                swarms.activateIn(null).run();* C) H) k7 S: A1 `: Y
        }) y' E9 B2 ~3 c9 T# f' |
3 l# @8 f/ n8 h8 O$ i
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-24 15:21 , Processed in 0.018250 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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