设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9451|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : V5 i; S/ R( ]' I

+ ?$ f2 a" |/ Z) q+ V  `  _8 Z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( x: O( `1 U5 \# n9 J% X
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; h) S4 M7 C" b4 e
swarm.SignatureNotFoundException1 @8 C' @& h! g
        at swarm.Selector.<init>(Selector.java:76)
' [# F2 h8 O4 s. n        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 ?3 e+ z6 ]3 K9 A" C
        at ActionGroupDemo.main(ActionGroupDemo.java:67)' q+ A9 ?: p( [/ U0 w
# M5 A) q7 o( R6 e4 ^

2 N' I4 J8 i, C7 k/ r) Yimport swarm.objectbase.SwarmImpl;
/ V, W* L: D  _/ Kimport swarm.objectbase.Swarm;
6 E1 e; }2 I# v" {import swarm.activity.ScheduleImpl;0 K8 _1 j; u, R0 W. p
import swarm.activity.Activity;
$ a: j1 G8 H/ K0 p1 ]2 c" I" Vimport swarm.activity.ActionGroupImpl;
4 L  Z& i! w7 M* e& S% G. ^import swarm.collections.ListImpl;" F) W: ]3 d2 j0 Z0 ?( E
import swarm.defobj.Zone;
4 J9 x/ ?$ f$ [% Aimport swarm.Globals;5 r+ z: j" W3 y7 o, B3 [
import swarm.Selector;
" E! d' [8 f! w8 |" Nimport swarm.activity.ActionGroup;
" e! o9 q. [7 a6 b- rclass Agent {
( R3 S; g+ F3 R" l6 a8 q        char id;9 Z: k+ C0 d6 z( g% s
: N1 b! E; v# J6 I- f0 P/ t
        Agent(char id) {8 `" ~& u' f( f
                this.id = id;5 |" r) I6 W9 P( Y
        }& }' R, d# C. ]2 ]
# U$ ^+ ~; w" u6 T
        public void agentStep() {0 a$ ^+ T2 ^( k1 ]. m* r
                System.out.println(id + ":" + Globals.env.getCurrentTime());
/ C9 k( J: V$ U3 P        }4 B9 y" {5 O7 J: N% P9 k
}
8 V$ C- x9 |! h9 \! d& l  J- j: L: G! i/ ^$ C) ?% T2 o
public class ActionGroupDemo extends SwarmImpl {9 T! y( X6 o3 v1 k( J- H: Z0 w
        ScheduleImpl schedule;
9 u7 k8 q* h1 B5 u8 e$ l' q. d        ActionGroupImpl actionGroup;0 e' J, _; W3 f7 T/ ?+ a1 R+ h0 ^4 t
        ListImpl list;) R/ j  ~, U# j/ P& c6 b
        char Id = 'a';" q+ T/ u/ m/ B% E
! F  f2 f4 v( X9 y$ Y
        ActionGroupDemo(Zone aZone) {7 x- }- B* r8 l5 B" n
                super(aZone);+ A& F: b$ @+ J: S6 N
                list = new ListImpl(aZone);
# \$ B& f! n9 m                swarmSetp();, o$ ?  n$ N# T1 Z. q# l4 m
                actionGroup = new ActionGroupImpl(aZone);" Q' V' w6 c$ c$ o  W% l
                schedule = new ScheduleImpl(aZone);
. Z$ U" L! N, C. e' x                try {
+ s  v/ {" a# V% s- O                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  `3 c; s, B( i$ c
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ {+ a  Q! k. R
                        6 Q3 C7 d. Q' Y! Q$ Q
                        actionGroup.createActionForEach$message(list, agentSel);
8 Q% O; j7 S6 Y                        actionGroup.createActionTo$message(this, swarmSel);! U" q# A( p0 @7 n, @; o7 K
                        schedule.at$createAction(0, actionGroup);* k+ e' ~' V) }) L% r
                        schedule.at$createAction(1, actionGroup);% l8 U# K( ?' W& Z* ]6 m7 s
                        schedule.at$createAction(2, actionGroup);: h. D# T4 w, C7 K, O0 E

3 [0 O! p3 s+ M" @& W                } catch (Exception e) {
4 [) q3 l' `. A+ M7 z                        e.printStackTrace(System.err);
1 e  h8 H' M, p                        //System.out.println(e);
  g. S1 T+ P. X5 R! s1 X7 i8 T                        System.exit(1);
; B- Z! u3 B: Q( \' P# P9 o; n/ [' g                }
8 G+ F+ q" n- R7 w2 @9 C, I# f4 \4 v# |4 }& X; n/ q  Z

% x: Q( S/ D- \; g        }. _4 ?; Y- |$ g3 E
( p! T2 h" O1 x
        private void swarmSetp() {
# j& }% u# }- W* e  t2 C4 }4 X                list.addLast(new Agent(Id));; B, j! y, R  u# W
                Id++;% N, `& _9 L3 e2 i8 m2 `1 A% |- L
        }
  G; q. \6 V) h( @- z5 N, \& c+ z
6 T  x8 Y' p1 h1 U        public Activity activateIn(Swarm context) {; d# [4 P) d# S; t5 k3 @
                super.activateIn(context);
/ q/ g7 L9 `' k  I7 S7 j9 z                schedule.activateIn(this);
! i" Q: l( r: r# n                return getActivity();& t; {" C  G0 Z+ _3 h
        }8 c' k9 O, f: J- n- _/ D$ Z* C

% X7 n- q. F) W  A: ~+ I: B        public static void main(String[] args) {/ I% E' q8 B: j* D6 T4 z# w
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" A% N0 `4 b+ P7 w
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 v, \: G6 n/ Y0 T1 r
                swarms.buildObjects();5 n1 ^3 B7 M# v3 |7 n
                swarms.buildActions();
/ Y% x8 k+ p! \' ?' ]                swarms.activateIn(null).run();6 _8 t1 {, a5 o* @1 }4 q, S
        }' g8 u2 ^4 U8 D0 }% F
5 i5 r, [+ ^7 w4 e
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-13 00:59 , Processed in 0.019357 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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