设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5579|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : J0 ~& }1 B; L! C& A+ @: j

7 c8 F8 [% r; H% @本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& F9 W% g  s. w9 }) K
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 [/ {# e5 {: u! P4 P( V) `
swarm.SignatureNotFoundException
8 e, d2 n( {! Q1 u+ q        at swarm.Selector.<init>(Selector.java:76)
7 \: A& I. J$ a. g        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! v' b3 A/ R7 _9 v0 E) N        at ActionGroupDemo.main(ActionGroupDemo.java:67)4 P9 w% I1 G4 d7 v$ G0 J
7 @  `$ ?3 X2 P* H

1 ~7 P  _6 Q) V2 Pimport swarm.objectbase.SwarmImpl;# B7 U# b9 }) \6 ~7 C
import swarm.objectbase.Swarm;: j  J( K- J1 H1 L$ x8 V
import swarm.activity.ScheduleImpl;2 W1 F: Y( a. m8 ?. E; N& c
import swarm.activity.Activity;% i9 h- i+ s$ v; Q
import swarm.activity.ActionGroupImpl;
4 N0 P9 o# W3 k/ Simport swarm.collections.ListImpl;% s( Y+ o# _$ J) W/ W& L1 d
import swarm.defobj.Zone;
5 C) K( L/ ]% D. x/ T& Aimport swarm.Globals;% _6 ^/ F, e% p6 p' N9 Q& G* H
import swarm.Selector;: o( F# }- n. F3 J
import swarm.activity.ActionGroup; / ^' G- z  b5 d: n9 p% z  G
class Agent {# S5 Y8 {. R0 e( F) b* k7 W# ^! w
        char id;; G# f3 @+ F# J4 b
' i- [) A. H% x% y# L* S
        Agent(char id) {
0 ?$ p7 A! l. g1 q                this.id = id;' d; i3 R. Y3 _& @1 w$ \& g  n
        }
" \5 W& G0 ~- t  n3 A  f6 A& v$ s3 u
( e) j0 Z4 D5 B: @/ r* h        public void agentStep() {5 m2 {* P4 S3 j1 ?/ |
                System.out.println(id + ":" + Globals.env.getCurrentTime());8 K$ ?& [) c' h: K% Z- }2 S6 ^
        }$ ~, b" f2 e' R
}8 e. i7 n4 K( F0 T1 U: ?
; S0 C5 u" d% \, w% o% H  [' c
public class ActionGroupDemo extends SwarmImpl {
; t" S4 Y1 H1 s" F' R5 U        ScheduleImpl schedule;
% W9 I, o* j* @+ z: I- `" y: A        ActionGroupImpl actionGroup;
" x0 B2 J1 J4 E3 F/ y: c: G# H! y' a* ]        ListImpl list;7 F6 ?: L. r# v
        char Id = 'a';. W7 K# X' S4 ?/ I' t! [/ Y- u
1 V! F) C; P( K2 Q( |
        ActionGroupDemo(Zone aZone) {
  s9 j8 q2 C6 t4 G* V, z3 s                super(aZone);" h' o; n( H1 \; b' d- Y
                list = new ListImpl(aZone);
7 \/ m' f3 B8 K% X, I, `+ Y                swarmSetp();
" t+ [/ W. l" B  ?) k1 e                actionGroup = new ActionGroupImpl(aZone);
5 y* F4 `  I# e  m4 A6 z7 `                schedule = new ScheduleImpl(aZone);9 j5 [' F, E4 V% Q( }$ ^' o3 p4 H
                try {
1 f) R- j. L. y2 E( z4 T4 f7 h" e                        Selector agentSel = new Selector(Agent.class, "agentStep", false);5 }% T7 R3 A% o6 @) |
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 e! F8 o2 A9 Z9 o$ C                        
- u: u3 d  v" h6 g7 U' ~9 q                        actionGroup.createActionForEach$message(list, agentSel);
: T4 \: F8 R1 z0 b' E                        actionGroup.createActionTo$message(this, swarmSel);
% c) N" |6 W/ T- D# b  k( ]                        schedule.at$createAction(0, actionGroup);6 b. d7 o! |0 h
                        schedule.at$createAction(1, actionGroup);( C9 f/ ^- z! ?$ B, _% }
                        schedule.at$createAction(2, actionGroup);8 k+ v& M8 Q$ Y- m

  n0 h5 b: J* q. u                } catch (Exception e) {3 z9 q$ w" {; Z( N
                        e.printStackTrace(System.err);0 I, U+ ?. c  u6 X! B& M9 i* z
                        //System.out.println(e);+ U3 F4 ]" A& q6 I6 o. X& u& \
                        System.exit(1);  m* o8 B! n3 k# ]
                }
* }/ u& ]2 K' z- ]5 L! Z% x8 B  a! V9 p  @$ ^
8 X9 u5 J5 q0 c: E' H* f
        }
( \7 J1 M4 \, w5 W3 m, d( h3 o! N+ i
        private void swarmSetp() {
; v/ z4 O1 u# i0 U. ?  I! J8 ~- ?                list.addLast(new Agent(Id));
( t" w+ t& l) y) g- c8 [' f                Id++;0 M: G1 H# A8 V
        }
) g! c. L9 [- o% ?+ M8 K4 |# C4 Y5 L1 r2 B( P
        public Activity activateIn(Swarm context) {7 p, A6 W- ?; f8 q0 @( D* x
                super.activateIn(context);5 j" Q5 O6 j* e, |
                schedule.activateIn(this);
* P8 k4 n/ g! ^& f                return getActivity();1 T, j/ I$ |: w5 A! A5 o5 [
        }
- k1 H: X$ t1 h& `1 B5 a) X& }6 I$ C! ~- M6 ~- A, d
        public static void main(String[] args) {
. S9 a6 J9 d( z( u  v2 m                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& N+ h3 x' Z; G/ @9 \( M
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 ?& G6 i( }$ Q5 Y
                swarms.buildObjects();
: k; P! e3 }" W- E% t" N. c6 m8 z5 q                swarms.buildActions();; V% ]0 @: d4 A7 h9 k3 D* Y4 ?
                swarms.activateIn(null).run();$ H  d9 p+ ]) J# l( }$ D6 L
        }8 {. j; u# D* p
; X, s) {; e9 P1 Y* o, V0 k
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-14 00:55 , Processed in 0.028581 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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