设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12066|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 E' Y$ w3 O6 @& m; R# m. P. _9 i) |# q/ H) z+ [/ A) ~
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; u( M; R3 j# |7 }" G) J以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 ?6 W. |8 r# dswarm.SignatureNotFoundException1 z( O" H+ X' V5 f1 J
        at swarm.Selector.<init>(Selector.java:76)2 z" ]' P, Z8 \+ |" ^0 c  i
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 Q$ R# v1 M+ S3 H; ]4 U4 P        at ActionGroupDemo.main(ActionGroupDemo.java:67)8 }% N  q' J+ y9 j. {

# |' R, G5 W9 m% k( Y- ]
8 J$ Z* l7 K9 c3 fimport swarm.objectbase.SwarmImpl;
! s1 C& R: c2 O8 o4 j  Qimport swarm.objectbase.Swarm;$ ?; _+ Y" p! ?
import swarm.activity.ScheduleImpl;
2 M% q) c0 t; h0 q8 d/ W: D  p, G& Dimport swarm.activity.Activity;/ [$ [6 L3 p: E  g% M$ d7 |
import swarm.activity.ActionGroupImpl;
, f3 F! k$ u& z  h" Uimport swarm.collections.ListImpl;
; ^3 `# X/ R5 [% O! _5 himport swarm.defobj.Zone; 8 k! M0 M, E$ X) K1 V. u
import swarm.Globals;
* r( S) @/ K: p/ u; e' r' a) pimport swarm.Selector;
9 o' d0 a7 z. R& ]import swarm.activity.ActionGroup;   L% u. M4 w% y9 G3 R/ n
class Agent {
1 }) ?) g6 T" ~1 \! Z( ?        char id;
# l+ |& D6 L5 n$ I! A. P: P* X6 Q8 K' p  X
        Agent(char id) {
+ k, Y) p6 O# A) ^# q$ X                this.id = id;% e) z" f1 K: M+ m; Y: W* y
        }
! j* @/ ~% t" x' O' D, `. @' j0 s) H* f& u, O
        public void agentStep() {% w. o) |: J  i/ v
                System.out.println(id + ":" + Globals.env.getCurrentTime());
# ~! Y, }, K, h0 L        }
# q5 h0 X. B% Z1 U& @$ g, x  h) b}
6 {. x* d7 G5 F; E
7 M+ V5 @0 n5 f* t' [1 e' ~public class ActionGroupDemo extends SwarmImpl {) P6 B& N7 D+ B  _8 _! H* w) e% n
        ScheduleImpl schedule;7 T& h+ V- E/ L& D- m
        ActionGroupImpl actionGroup;2 J7 w6 B9 z, P2 d" \; U
        ListImpl list;
  _+ t1 y: s9 ]" ?        char Id = 'a';6 B, N( U4 E8 D5 j" t7 \
! b( B" x7 T( `1 d  x, \- v
        ActionGroupDemo(Zone aZone) {; g0 G' }, P& v- K0 n1 t
                super(aZone);! ^' B! O+ [; _: p- n
                list = new ListImpl(aZone);
) }; u) B  V, N4 t" j' |; `" e8 X                swarmSetp();
  j3 z3 ]& E, U3 D7 q' k2 H                actionGroup = new ActionGroupImpl(aZone);( N) {: M; D+ s' |% r
                schedule = new ScheduleImpl(aZone);
1 B0 h+ k: e5 ~/ l                try {" r5 F* J% I. W% F8 d+ s% w5 r7 d4 ~
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);# c9 F8 k: o2 [( {, a6 v( K, s' f
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 s# D$ ~: R) {9 f5 {
                        2 O% C4 Y6 G: s* z
                        actionGroup.createActionForEach$message(list, agentSel);
& b( j  q, m' S7 l) T3 f3 S                        actionGroup.createActionTo$message(this, swarmSel);' _  S4 f# T  G0 `8 W
                        schedule.at$createAction(0, actionGroup);
3 b! o& ^" l. u' t                        schedule.at$createAction(1, actionGroup);! ]* S4 I/ E  ^. s7 Q, W, y" Z( @+ d
                        schedule.at$createAction(2, actionGroup);2 i$ H' L( \9 Z/ T4 Z$ {4 c

; m4 k  ~& o% x& k. j                } catch (Exception e) {
4 X( R! x5 ?% s2 _: I                        e.printStackTrace(System.err);
( Z# g" A4 f! J( s1 w, L9 l* S                        //System.out.println(e);! V, U( L: E) I
                        System.exit(1);/ v* a9 x1 P" R$ T; A7 [
                }. c9 ^# p; G" T
5 d% K3 G. R5 p. o% g5 a9 C3 b' [: E
; @& D3 {  I* n
        }
; @8 s6 \/ g' {2 z% k5 |/ K7 z0 k
& `' ]$ d; X/ B% ~        private void swarmSetp() {
5 I4 a: j2 ^, k0 @                list.addLast(new Agent(Id));
* Y- ~2 |, C9 u% g% D                Id++;! V8 R. ?' y0 v! t" q5 o+ Y0 I
        }) a1 N' a9 K' E/ q7 c/ w
0 b: h$ g  L1 r5 B& x
        public Activity activateIn(Swarm context) {
; W% b) w; K8 g8 j6 ]4 Q/ T                super.activateIn(context);
( E+ J) [" y7 i8 p                schedule.activateIn(this);
2 _/ X+ L" ^. q$ X3 d! ]                return getActivity();
$ }3 b  [' o7 K1 `- T" L        }5 \9 R! V8 P" V$ ]; m
2 m+ q0 w. {9 E* K
        public static void main(String[] args) {
# y# \  }# O% {                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ v2 Q4 m, t- ?* M# s% @6 i9 R                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% m) K2 ]2 @6 L# u( [% A
                swarms.buildObjects();
0 V8 {3 y( ?4 f4 T% I                swarms.buildActions();
- `5 ?9 Z) r. o( n5 o                swarms.activateIn(null).run();" Y' A, Z5 ~) K( X
        }( I! b! h8 u2 s, I, H* q
% Q% K6 V, k3 d+ ?, f
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-29 11:12 , Processed in 0.016189 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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