设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7749|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& N$ Y" D8 Z+ P* c, p: c% |& F* @* z+ R3 S7 Y/ U  V
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
* f, @6 k- R# P  h$ p" ~以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ G5 @1 P0 H& Q. G" P
swarm.SignatureNotFoundException. t) v# E' G3 `5 H5 f+ _( J
        at swarm.Selector.<init>(Selector.java:76)
. S6 K, C. m: l& d. W" M        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# O6 t: a8 ^9 m( R; n        at ActionGroupDemo.main(ActionGroupDemo.java:67)' z# h) {0 N: F0 F' }

+ K: q! e+ A0 K3 D' g) A0 o: T
$ @2 d: z8 X7 Y$ V0 n9 Oimport swarm.objectbase.SwarmImpl;6 S  {1 d/ ?7 {) X& c8 N2 k& ^' x/ ]
import swarm.objectbase.Swarm;
6 H& W2 f. M) |5 E6 K$ M( r. E3 Mimport swarm.activity.ScheduleImpl;
$ d! d7 W: I/ i8 k* i: \import swarm.activity.Activity;8 x- ?1 \7 O. f% I" Q% Q
import swarm.activity.ActionGroupImpl;7 C" o4 |6 ^) }7 I
import swarm.collections.ListImpl;0 ^+ X/ c. u% `) e% i# u
import swarm.defobj.Zone; $ ~$ B2 J* X3 L
import swarm.Globals;- v* y, k$ {% S2 |; X5 Z  B) E
import swarm.Selector;
1 ]# o6 ~* i' U4 Jimport swarm.activity.ActionGroup; - p/ {- s6 w4 d4 [- V
class Agent {8 \7 }/ l- N; k3 U& N8 n5 }
        char id;
8 w( q# D* ?* p, y& r
$ f) [; g! g2 C4 W        Agent(char id) {
' V+ G# s1 o! V  B# P% S- [1 b' u                this.id = id;
1 G: h6 S5 ~2 }$ U7 V# K        }
8 W$ B# g* y- d# |& k4 X) O' a7 O, A9 b) }
        public void agentStep() {# J7 j# h% f5 Q, N+ c3 q. e/ m
                System.out.println(id + ":" + Globals.env.getCurrentTime());1 o/ |* n, U  x, S
        }% X- ~1 G- m! s5 a9 _
}. F! @6 R' c, U+ J3 g
2 B) A  R' i( p) t; J: m( v
public class ActionGroupDemo extends SwarmImpl {
# K9 z- k8 L8 _: f        ScheduleImpl schedule;1 ~, O1 [% J# C4 e( k
        ActionGroupImpl actionGroup;
0 U' e7 R9 B8 Z( J; ^- m4 O4 f  V        ListImpl list;
  b6 n2 E: X. p4 x4 T7 p( e. Q        char Id = 'a';
" a. X% ^; C: |3 x0 c' }7 U  R! M9 J' l1 C( [  j1 l
        ActionGroupDemo(Zone aZone) {! A' Q& _1 E; [! H" A; r
                super(aZone);
* [6 J2 t8 C% Y$ C" Q( f                list = new ListImpl(aZone);
8 @  b. J# A7 d                swarmSetp();1 Z' S5 |* Z7 _! ~9 X# @
                actionGroup = new ActionGroupImpl(aZone);/ x0 }  ?; l2 V7 H! g2 S0 C6 i
                schedule = new ScheduleImpl(aZone);
% \( e/ _: y/ T$ |& p                try {
& Q3 f% `" T4 L/ K! T                        Selector agentSel = new Selector(Agent.class, "agentStep", false);" F% k0 Z) V" o
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 [5 `, z# X9 ]/ H! Y/ d/ K1 i8 ]$ T) x                        $ }3 k( \: k! X) w7 z, g5 r' w, A
                        actionGroup.createActionForEach$message(list, agentSel);7 X0 [+ Y8 I/ Y! j8 _# `
                        actionGroup.createActionTo$message(this, swarmSel);8 |; ~6 Z- Q% z" i& B8 u; U
                        schedule.at$createAction(0, actionGroup);
. y/ K+ O* j# a5 L3 ]' l                        schedule.at$createAction(1, actionGroup);* U- c* |9 o3 _- U2 I7 r- J
                        schedule.at$createAction(2, actionGroup);
) S: Y# t# R: R; {# o+ r% m
, ]& z# }; D5 C                } catch (Exception e) {
3 s! [! _" i8 F( k% S. L: I                        e.printStackTrace(System.err);
- Z4 Y  D' h! J$ X9 s, q: _                        //System.out.println(e);
4 o0 E0 A  `7 s% @' G                        System.exit(1);* ^2 Y5 E  z, b; X, k
                }
7 S0 K# R- [& d8 ^, u; {# [7 r0 ^- t6 _* h  n, j

/ U0 A, @" D5 s  Q/ \- ]        }
. U  ?4 f( h* F) ~  z) V9 c7 j. i# \1 x- c  ^) }
        private void swarmSetp() {3 P5 w9 |6 {" b$ Z
                list.addLast(new Agent(Id));3 i7 x1 {, C; |' y
                Id++;4 t. w8 M" r- H& `$ d8 [
        }
" F  o+ {+ u3 Y
1 e5 X. f3 q( \4 p3 ?        public Activity activateIn(Swarm context) {. L& [0 M. n8 Q
                super.activateIn(context);, p2 U% d! o, Y. I( m$ v/ |
                schedule.activateIn(this);! w9 k% e) d  ^# N+ I# E
                return getActivity();' I' p- Z6 f1 O# {9 a  j$ Q- C1 w
        }
& X$ g$ f3 |" J/ ]) c% A7 _9 C: x0 |
        public static void main(String[] args) {
3 h1 u3 ~8 @% c! j                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 I7 x  W7 b) A2 @  ]/ }) G; i
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# a5 E1 O5 O5 w
                swarms.buildObjects();- A& B5 [0 V. V- y9 x% ?& p. Q
                swarms.buildActions();
$ @9 [+ k" k4 p% |0 i8 p                swarms.activateIn(null).run();4 r% o. R* j* H  M5 E
        }
) M+ w0 k' R3 g& a3 C3 T2 I) W6 }% f1 F5 {% C4 `6 u7 o2 [
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-13 15:02 , Processed in 0.015563 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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