设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4991|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; i& i' }* w, `  p* l8 b' l) {3 F: u, \& W
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 h! p# p0 M5 n1 ^( F
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 M9 _3 o2 v: L6 @5 fswarm.SignatureNotFoundException
0 h5 {3 p4 v  ~        at swarm.Selector.<init>(Selector.java:76)
+ c& q$ A$ }& r        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ V- j* z7 U2 ?# l1 \+ }        at ActionGroupDemo.main(ActionGroupDemo.java:67)8 M' J6 S1 u- o$ Z5 _& M9 O

0 R7 _" N: q( u9 q8 T) {; C+ u5 J8 j0 }
import swarm.objectbase.SwarmImpl;$ J5 Z$ m9 v3 X  A
import swarm.objectbase.Swarm;2 y+ U& n  W4 Y8 r
import swarm.activity.ScheduleImpl;
, l3 A* M/ f/ l. r( b  ^! _) ?import swarm.activity.Activity;
" y1 G" ]; O9 ~  mimport swarm.activity.ActionGroupImpl;6 X* }0 {5 \) n% w
import swarm.collections.ListImpl;. U' s9 u# r6 I, P2 _7 b  S
import swarm.defobj.Zone;
3 V% \8 F0 x- ~# y8 Jimport swarm.Globals;
2 c% M1 t  M0 G+ l5 timport swarm.Selector;
3 g2 b! _  Q- _! _9 {3 w+ J- Cimport swarm.activity.ActionGroup; 3 q# E- g; F9 Y
class Agent {
  Q5 m( A/ W! V" Z' z/ j        char id;
: Q/ T0 D: i4 ~& c: u+ C/ Z: I) _  [2 P( e
        Agent(char id) {# P' x' y2 O; a
                this.id = id;
" k% C$ T% c# Y5 E% B7 s        }( V: X2 l* _3 O& }+ I- S' D
- N5 I8 ]) k3 P1 _+ q1 L4 P# ^7 {
        public void agentStep() {8 _' V' G" s- p% `% R
                System.out.println(id + ":" + Globals.env.getCurrentTime());7 K3 @6 W1 \1 _1 _0 q: V; ~) b* h
        }
5 x) T( Z2 m3 b5 S}, G. [0 g1 R) a- X4 g  i* e
1 J5 n; v9 J) X. v  o1 Y. e
public class ActionGroupDemo extends SwarmImpl {
. z0 G3 H" {9 m! L' `/ h        ScheduleImpl schedule;+ ?  Q- Q+ y* C
        ActionGroupImpl actionGroup;4 h" K. @: W/ K. A# @
        ListImpl list;8 E' U6 o4 z( T. g" e9 ?
        char Id = 'a';
* |! N; x) R, t! l3 F4 x+ E
6 q! g2 ^! L; Q4 N0 V        ActionGroupDemo(Zone aZone) {
+ S" {2 Q- O( x( h9 A. n                super(aZone);
& g7 f# ^- c1 ^" C                list = new ListImpl(aZone);$ g' Y" r- t! t8 r
                swarmSetp();. d/ ^+ ^( _6 p  d' w' B
                actionGroup = new ActionGroupImpl(aZone);9 Y& G0 F% _5 l5 W- O
                schedule = new ScheduleImpl(aZone);
( R9 \7 @! n. b, ?5 j3 p; u& ~                try {, N; J* S" M0 |$ G; g
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ x8 E) D, @+ B" N7 f$ V                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" V8 H: ^; B5 s! l" y
                        
) V) W% K' r8 E! B                        actionGroup.createActionForEach$message(list, agentSel);: n; F/ v& S3 }
                        actionGroup.createActionTo$message(this, swarmSel);
/ k' {  M. n% X1 g& i/ w                        schedule.at$createAction(0, actionGroup);9 i2 Q( V+ e% B5 D% m3 l
                        schedule.at$createAction(1, actionGroup);
$ ^# t# a$ w& L# v6 x1 W                        schedule.at$createAction(2, actionGroup);; k7 |" w! o9 t7 b
5 p$ w1 S  y4 S, Y1 D" L3 Y2 X; |1 e
                } catch (Exception e) {
7 b; v: i! a% ^" g$ E4 K                        e.printStackTrace(System.err);
! x* W3 _* w0 U  f- X- t% o! i+ o8 D                        //System.out.println(e);
$ A% W: Y1 |8 U8 O8 K/ a                        System.exit(1);
9 c7 ?3 k9 k9 y" s- |% l                }
- V5 y# Q8 l" Z  B# p5 p/ O3 k2 m" G# c
# x% s4 F+ t, a# m
        }& V" w" `* B0 \# o
) {$ Q" e' h% t1 j) d& `
        private void swarmSetp() {4 A+ r" c/ x1 E1 ~& U+ @7 V
                list.addLast(new Agent(Id));
" Y, E# |2 Q$ M4 V" G' p: T                Id++;
4 i4 I* Q/ W) z7 y% u4 p        }
' }% j4 N! q: |5 `( C6 X: `) }) L1 h1 p5 S' Y' k
        public Activity activateIn(Swarm context) {
% _6 Y5 U8 u- \/ [                super.activateIn(context);- J  l% T, L& L' y3 m- _1 `
                schedule.activateIn(this);
) t& l8 ^0 ^4 K. ~4 V5 h0 [/ Z                return getActivity();. d% f/ T& W% J( t& q* I" t. b
        }7 V+ x4 c- ^- g( i7 F2 h8 ]: [! I  {. s

3 L1 K5 `  h- O( P/ q% S) h        public static void main(String[] args) {
9 B: y* e1 d: D3 c                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. E0 z" d4 V5 b9 ?) ^2 Q/ W8 a2 Y6 b
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. V$ s: Q' f' @' {1 G# s( f                swarms.buildObjects();. v9 g3 D) K: m8 P& A, ^$ A
                swarms.buildActions();' c& Q/ A/ O" [+ i9 f) R
                swarms.activateIn(null).run();
$ C' K# W) j7 g  |' ?  N% S" T- j/ N        }5 j# n/ m  `6 Q; E3 X: _

" r% B& t8 N( o! ~. z/ j}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-21 00:03 , Processed in 0.019484 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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