设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11557|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, d3 Y( L. p/ Y* M% ^
  D: C3 u% R/ A5 W9 c本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
* o9 k$ L+ E* W; u2 w" q, P以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ e; q2 [3 a# {* g: p
swarm.SignatureNotFoundException+ ^1 `  D: ?$ ]* @  {0 U0 ^  d
        at swarm.Selector.<init>(Selector.java:76)
: o$ I' `/ V- W3 K: k: W        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 z' b6 G# g) z4 N' c$ v9 D, ^/ B        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 s- q# r: |2 N& n4 I. B

, t' ?$ E( @1 Q) ]
1 o9 e( n8 Z* O) jimport swarm.objectbase.SwarmImpl;
8 V% m! Y7 J1 }* Uimport swarm.objectbase.Swarm;
( c: s  r) U: t; N0 f: B9 e+ ]import swarm.activity.ScheduleImpl;
! b0 w0 g! Z7 G& T% O7 _* Iimport swarm.activity.Activity;
* y$ }1 v, K6 k) M5 W& dimport swarm.activity.ActionGroupImpl;, s4 x+ R! v& f, w* w4 }
import swarm.collections.ListImpl;. q# _: T6 u2 \0 z. Q1 }. k+ x
import swarm.defobj.Zone; ) h9 {0 Q5 W, V7 X0 h- W  t' F
import swarm.Globals;
9 h; {0 f9 x6 Z7 \5 Zimport swarm.Selector;& [  U* B( j9 \
import swarm.activity.ActionGroup; 0 K2 @, H2 h4 S$ z: ~
class Agent {" S- i2 i( F9 l8 ~
        char id;
! p( U. M; h4 ~) o9 B' k  W) [$ D0 G
        Agent(char id) {
' J% ]2 f4 I7 G* n                this.id = id;, C" R. E1 D! |7 r7 ^+ W" `
        }
& {3 z/ W5 e4 T- a8 f3 j7 J3 B" N; _0 m. }& I, I8 W" }) s7 B5 |
        public void agentStep() {" \3 h# h8 N1 B
                System.out.println(id + ":" + Globals.env.getCurrentTime());
& K# n: @( x/ G        }$ e' n, g% z; }, J# p: J- |% a
}7 ]+ r4 z! O& o5 h4 @) C

! I. _) R) `1 \" o7 |; cpublic class ActionGroupDemo extends SwarmImpl {* c# r3 F6 m! ?$ n
        ScheduleImpl schedule;  R. l- a+ |8 s5 x
        ActionGroupImpl actionGroup;
: K2 e$ d3 T8 K5 j        ListImpl list;' ~5 ^7 f8 W; i4 o, ?1 a
        char Id = 'a';
* t1 L% X! _7 p9 `% y' n( D' j
: v1 Y* T4 k. ^9 d! q7 _, E) X/ J        ActionGroupDemo(Zone aZone) {6 J6 {1 u+ S( n- D8 U
                super(aZone);. P* g4 a& ^! Z8 n9 Y
                list = new ListImpl(aZone);
% `" x9 A  k6 M& j                swarmSetp();" n7 j2 ^5 r3 g- ]+ ], F9 x& u
                actionGroup = new ActionGroupImpl(aZone);* W5 t! p% F8 `$ U
                schedule = new ScheduleImpl(aZone);
! p% @8 ]; |; j9 P                try {
% O+ q+ X0 U4 [. k2 E. K) W, i                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 X5 k. f5 [) a! y6 S( b) w                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; c/ O. {- Z3 P1 u# m2 F+ ?                        
, O! p( n; q+ |$ j7 {                        actionGroup.createActionForEach$message(list, agentSel);
: Z/ z. p' l3 ]% u                        actionGroup.createActionTo$message(this, swarmSel);9 b  ?. _- J6 N
                        schedule.at$createAction(0, actionGroup);
: u- N& }* d$ }9 @# ?( i# g. _4 B  ^                        schedule.at$createAction(1, actionGroup);
4 T+ H2 M) q8 m/ y% I/ n$ q                        schedule.at$createAction(2, actionGroup);' v" w% N& h9 Y7 m- S
0 j: Z% S0 e( }; X9 H" Y/ o1 N
                } catch (Exception e) {
; i* Z/ C6 K, _* u                        e.printStackTrace(System.err);
( p. _$ n% n1 K3 ~. g                        //System.out.println(e);9 w9 o3 F2 c+ S' |
                        System.exit(1);
$ ]. B( P9 c/ P                }
' f- }0 n! u  ~, R1 Q+ {2 }) }1 P' d
: J- k! E/ {) G7 i$ ?
        }
9 c- ]0 W1 j: n8 v' r4 [- z* O7 g' S  c" `
        private void swarmSetp() {
. i% h0 W6 V$ V4 u                list.addLast(new Agent(Id));: r; B: n$ H, G) S  h/ |3 b, U
                Id++;
! d. E8 @* C8 P        }7 r/ s6 I, ]$ f1 c& D" m

8 g8 ]: \0 {! I( {1 k) a        public Activity activateIn(Swarm context) {$ n# [" L, ~+ ~2 ]4 E
                super.activateIn(context);; E0 r# ]9 e+ H% T) _7 P9 @
                schedule.activateIn(this);3 t3 q7 V. v3 G" k' M: ~, n. _
                return getActivity();4 q4 X# a, K9 i% g! h& y% r
        }
$ N: S0 n3 `9 T' A7 O( S
' |" t0 s. [* Z* c        public static void main(String[] args) {
8 G; ^$ J6 a; g$ P. }& G, `                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 I3 F4 Y: g: d1 q4 o* K                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 T2 W8 s  `  N4 A% ~7 x- M4 o: _
                swarms.buildObjects();7 [" h: J& e$ Q$ B) ?6 c2 ^) i" f# [5 h
                swarms.buildActions();
% f7 n5 p) c6 T6 M                swarms.activateIn(null).run();9 F4 g0 K7 z* u5 L6 P, V
        }  ?3 h$ Z" R7 x1 K! H
# M$ k! O# z, \2 n
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-15 23:11 , Processed in 0.017608 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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