设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12780|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 z# ~7 S$ o/ u2 a7 X' b# P

1 T- y3 k. ^8 W. m. @2 a本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 [7 a+ S( ^% U以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* y+ `2 ?% h  c
swarm.SignatureNotFoundException  i5 M& m# w. E; u( C# X
        at swarm.Selector.<init>(Selector.java:76)& ~& R2 f: a% o* d* |! T9 c" s
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 B: b0 T% n- W$ C3 q        at ActionGroupDemo.main(ActionGroupDemo.java:67)
: P0 W  S. K$ Q/ h5 ?7 \4 u& Z/ f. f5 }7 `# W* u) S
. g' j4 a3 Z5 P. h
import swarm.objectbase.SwarmImpl;1 o  }, W3 J! A8 E
import swarm.objectbase.Swarm;
* L( V5 b' ]' dimport swarm.activity.ScheduleImpl;
$ m8 j# J  A5 ]% Timport swarm.activity.Activity;) f  F2 Y9 h5 i4 V. Y
import swarm.activity.ActionGroupImpl;  ^( j+ M; B. T* u7 C$ I
import swarm.collections.ListImpl;
1 j: ]9 a/ s$ A! B! ~! Nimport swarm.defobj.Zone;
& N& U* e3 p& O( m  @& ^import swarm.Globals;9 `+ A" A. r: \- k
import swarm.Selector;
' ]2 y9 |  U, Y6 B2 Bimport swarm.activity.ActionGroup; : N) q* E- A+ C% H0 g0 V+ r
class Agent {
! k% M% J- O6 j$ P        char id;, D- k$ ?* L$ t$ |) l8 Z
$ _/ n0 N0 }3 Z+ D% p
        Agent(char id) {
1 h* s2 A, t, z; P                this.id = id;" t$ |$ e3 j% ]! E/ f
        }6 }" p  @) @6 D) A* s

7 \3 c" ?8 f/ T0 m( A& [+ C+ ]        public void agentStep() {
/ h' t* d% x% k. ^! G                System.out.println(id + ":" + Globals.env.getCurrentTime());
4 r0 ]  s; K5 d        }4 x2 z: a, X* {
}
% g# w" Y" J& X  e6 n
( {& }7 ?: W7 i/ }public class ActionGroupDemo extends SwarmImpl {% A6 c7 z# l2 ]0 o! `
        ScheduleImpl schedule;: s7 w  Y/ n! M0 O
        ActionGroupImpl actionGroup;, v8 z& m7 A* t3 N2 |
        ListImpl list;! y" |$ N$ W& K# \2 S
        char Id = 'a';
/ t% o' g7 @+ a3 K' l; E, |! Y/ V5 K
        ActionGroupDemo(Zone aZone) {
+ `" c( }7 }- ~4 E, O                super(aZone);3 W2 h; a( d, B' n
                list = new ListImpl(aZone);, n+ ^) [" x/ M, Q) L
                swarmSetp();7 i! W; Q1 E/ r: g4 J9 L# B
                actionGroup = new ActionGroupImpl(aZone);
& j6 h8 B4 L9 q( ~                schedule = new ScheduleImpl(aZone);
7 \1 _/ M1 u# _4 }% ^3 y8 g! `                try {1 o1 ]$ M  L- a% b
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 W& E4 w. C9 ~# z                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* C3 y7 p8 ?1 a$ G8 [/ ^& I                        
- h" @8 `5 J1 C                        actionGroup.createActionForEach$message(list, agentSel);( Y4 Y+ y2 R! p% t" d8 u3 j
                        actionGroup.createActionTo$message(this, swarmSel);
' h$ l: f- L* x/ R* a                        schedule.at$createAction(0, actionGroup);; y8 z% g! e7 I& ]: q- X& K
                        schedule.at$createAction(1, actionGroup);
& u3 W2 L2 _* ^/ v$ ?* c9 {                        schedule.at$createAction(2, actionGroup);2 L  I  B. r9 L' t7 L/ x' {) N9 Y

/ ?& J! x8 H/ F+ j                } catch (Exception e) {9 G- T# H: o' S" J" z  {
                        e.printStackTrace(System.err);
2 D. U% \4 a5 R1 I2 E: D2 Y                        //System.out.println(e);
8 U2 {. h9 E$ q7 A* |0 ]                        System.exit(1);
; ^: x$ Y+ j" G8 K4 o" p0 X                }0 g6 ?1 _5 D9 T  m. s" b: O) e
0 P; b- z) D* ~! c# L% V+ c$ \
4 k) q9 ?. N' n6 V  D
        }
. X2 M8 C7 k/ ^- e3 o" Q. B$ Y" B# f( m. q5 y  h+ c
        private void swarmSetp() {
' B3 e2 v  p6 I& D; U2 K% ]                list.addLast(new Agent(Id));
1 _6 J! Z7 ]' F% [2 a! O                Id++;
, V! I) ^6 C8 w        }* W( [+ o2 H. M+ H# m. R

2 H1 z' z& W$ o$ D! x        public Activity activateIn(Swarm context) {
0 }6 M" l, d$ Q$ s                super.activateIn(context);' \) b# n7 Y9 C7 J, r% L5 E1 ^
                schedule.activateIn(this);
$ Q9 C0 p* C) F1 k) u! V6 [6 h                return getActivity();/ C. |4 p' W. P) P
        }
5 W% q6 D" U3 g5 X" t
( Y( }$ q8 @# @% Q        public static void main(String[] args) {
1 v, j! d2 v( w, e4 ]5 }' G% h" K; ^                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' N9 y8 o* X5 C3 ?3 c7 a
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: }% n. ^8 }) b# [                swarms.buildObjects();( x% q' K! l2 g" ?, W1 R# K7 S' K
                swarms.buildActions();
3 ?, p8 ]% _4 Y! M! h: k" J                swarms.activateIn(null).run();
. U. Y  B5 ^4 V* @3 M* l: j) d4 g3 j        }
3 I) ?% D+ \0 a* l8 S8 J! }6 N% R* g/ |8 F3 \% R! {
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-19 13:04 , Processed in 0.013936 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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